OpenCode Go: Setup and Configuration
Learn how to set up OpenCode Go, a paid add-on for OpenCode, including authentication and model selection. This guide is for users who need to configure the shared OpenCode API key.
Read this when
- You want the OpenCode Go catalog
- You need the runtime model refs for Go-hosted models
OpenCode Go is a paid add-on subscription that lives inside OpenCode.
The credential system it relies on, OPENCODE_API_KEY, is shared with Zen, yet holding a Zen key does not grant Go access on its own. Go maintains its own runtime provider identifier, opencode-go, which keeps upstream per-model routing accurate. For this release, OpenCode Go ships inside the OpenClaw package, so just completing onboarding and configuration is enough; there is no extra plugin to install.
| Property | Value |
|---|---|
| Runtime provider | opencode-go |
| Plugin | Bundled (opencode-go) |
| Auth | OPENCODE_API_KEY (alias: OPENCODE_ZEN_API_KEY) |
| Parent setup | OpenCode |
Getting started
For this release, OpenCode Go comes preinstalled with OpenClaw. Either proceed through interactive onboarding or supply the shared OpenCode API key directly.
Interactive
Run onboarding
openclaw onboard --auth-choice opencode-go
Set a Go model as default
openclaw config set agents.defaults.model.primary "opencode-go/kimi-k3"
Verify models are available
openclaw models list --provider opencode-go
Non-interactive
Pass the key directly
openclaw onboard --opencode-go-api-key "$OPENCODE_API_KEY"
Verify models are available
openclaw models list --provider opencode-go
Config example
{
env: { vars: { OPENCODE_API_KEY: "YOUR_API_KEY_HERE" } }, // pragma: allowlist secret
agents: { defaults: { model: { primary: "opencode-go/kimi-k3" } } },
}
Catalog
To see the current model lineup, execute openclaw models list --provider opencode-go.
OpenClaw merges the model IDs advertised by Go with authoritative metadata pulled from https://models.opencode.ai/api.json, so newly added upstream models show up without requiring an OpenClaw update, provided they rely on a supported transport over the trusted OpenCode endpoint. The upstream catalog is fetched and cached only when OpenCode Zen or Go is set up, or when explicitly chosen with OpenCode credentials; it is never retrieved during startup or while unrelated providers are in use.
Sample refs include opencode-go/deepseek-v4-flash, opencode-go/kimi-k3, and opencode-go/qwen3.8-max. Treat these as illustrations, not a full list, and rely on the CLI for the current lineup. OpenClaw filters out deprecated entries from active discovery and refreshes lifecycle status in its offline fallback. Preview rows that ship bundled stay hidden until accepted upstream metadata makes them available. Explicit refs already present in the bundled seed continue to resolve.
The Go model-list endpoint acts as a broad inventory rather than a check of account entitlements. Merely listing models does not grant usage rights: inference still demands an active Go subscription, and that includes promotional models.
Privacy
Data retention and training policies differ from model to model. Check the latest OpenCode Go privacy table before picking a model, since provider policy may shift independently of OpenClaw.
Advanced configuration
Routing behavior
Any opencode-go/... model ref gets routed by OpenClaw automatically. No further provider configuration is needed.
Runtime ref convention
Runtime refs are kept explicit: opencode/... points to Zen, opencode-go/... to Go. That distinction preserves accurate upstream per-model routing across both catalogs.
Shared credentials
A single OPENCODE_API_KEY can authenticate both runtime providers, so setup can store profiles for each. Go usage still depends on a separate paid subscription through the OpenCode console.
Tip
The shared onboarding walkthrough and the complete Zen + Go catalog reference live at OpenCode.
Related
-
OpenCode (parent), Shared onboarding, catalog overview, and advanced notes.
-
Model selection, Choosing providers, model refs, and failover behavior.