---
summary: "Use OpenCode Zen and Go catalogs with OpenClaw"
read_when:
- You want OpenCode-hosted model access
- You want to pick between the Zen and Go catalogs
title: "OpenCode"
---
OpenCode exposes two hosted catalogs in OpenClaw:
| Catalog | Prefix | Runtime provider |
| ------- | ----------------- | ---------------- |
| **Zen** | `opencode/...` | `opencode` |
| **Go** | `opencode-go/...` | `opencode-go` |
Both catalogs use the same OpenCode API key infrastructure (`OPENCODE_API_KEY`,
alias `OPENCODE_ZEN_API_KEY`). Go still requires its own paid subscription;
having a Zen key does not by itself grant Go access. OpenClaw keeps the runtime
provider ids split so upstream per-model routing stays correct.
## Getting started
**Best for:** the curated OpenCode multi-model proxy (Claude, GPT, Gemini, GLM,
DeepSeek, Kimi, MiniMax, Qwen).
```bash
openclaw onboard --auth-choice opencode-zen
```
Or pass the key directly:
```bash
openclaw onboard --opencode-zen-api-key "$OPENCODE_API_KEY"
```
```bash
openclaw config set agents.defaults.model.primary "opencode/gpt-5.6-sol"
```
```bash
openclaw models list --provider opencode
```
**Best for:** the separately subscribed Go lineup across DeepSeek, GLM, GPT,
Grok, Hy3, Kimi, MiMo, MiniMax, and Qwen.
OpenCode Go is included with OpenClaw for this release, so no separate
plugin installation or Gateway restart is required.
```bash
openclaw onboard --auth-choice opencode-go
```
Or pass the key directly:
```bash
openclaw onboard --opencode-go-api-key "$OPENCODE_API_KEY"
```
```bash
openclaw config set agents.defaults.model.primary "opencode-go/kimi-k3"
```
```bash
openclaw models list --provider opencode-go
```
## Config example
```json5
{
env: { vars: { OPENCODE_API_KEY: "sk-..." } },
agents: { defaults: { model: { primary: "opencode/gpt-5.6-sol" } } },
}
```
## Provider catalogs
### Zen
| Property | Value |
| ---------------- | ------------------------------------------------------------------------ |
| Runtime provider | `opencode` |
| Example models | `opencode/gpt-5.6-sol`, `opencode/kimi-k3`, `opencode/deepseek-v4-flash` |
Run `openclaw models list --provider opencode` for the current active list.
Model availability and promotional routes can change independently of OpenClaw.
Live discovery combines the models available to your OpenCode account with
authoritative model metadata from `https://models.opencode.ai/api.json`.
OpenClaw fetches and caches that catalog only when OpenCode Zen or Go is
configured or explicitly selected with OpenCode credentials; startup and
unrelated providers never download it. New upstream models become available
without an OpenClaw update when their metadata describes a supported transport
on the trusted OpenCode endpoint. A key-scoped response can omit models
unavailable to that workspace. Metadata and lifecycle status refresh together;
deprecated models are excluded from active discovery and its offline fallback.
Deprecated explicit refs remain resolvable for existing configurations but are
not shown as current recommendations.
### Go
| Property | Value |
| ---------------- | --------------------------------------------------------------------------------- |
| Runtime provider | `opencode-go` |
| Example models | `opencode-go/kimi-k3`, `opencode-go/deepseek-v4-flash`, `opencode-go/qwen3.8-max` |
See [OpenCode Go](/providers/opencode-go) for discovery, routing, and access
requirements. Go's model-list endpoint advertises its general lineup; listing
a model does not prove your account can run it.
## Advanced configuration
`OPENCODE_ZEN_API_KEY` is also accepted as an alias for `OPENCODE_API_KEY`.
Entering one OpenCode key during setup can store credentials for both
runtime providers. It does not create a Go subscription or grant Go
entitlement; subscribe to Go in the OpenCode console before using it.
Create an OpenCode account and generate an API key at
[opencode.ai/auth](https://opencode.ai/auth). Billing and catalog
availability are managed from the OpenCode dashboard.
Gemini-backed OpenCode refs stay on the proxy-Gemini path, so OpenClaw keeps
Gemini thought-signature sanitation there without enabling native Gemini
replay validation or bootstrap rewrites.
Non-Gemini OpenCode refs keep the minimal OpenAI-compatible replay policy.
Billing, retention, and training policies are model-specific. Check the
current [OpenCode Zen pricing and policy](https://opencode.ai/docs/zen/)
before selecting a route. Free models may be temporary feedback programs.
## Related
Go catalog discovery and access requirements.
Choosing providers, model refs, and failover behavior.
Full config reference for agents, models, and providers.