I am working on adding opencode-go provider to my openclaw. I set the OPENCODE_API_KEY and when it restarted when I did "openclaw models list --provider opencode-go" I saw all the opencode-go models. I then did "openclaw models set opencode-go/mimo-v2.5-pro" and now see that as the main model. But now when I do 'openclaw models list --provider opencode-go' I only see this one model. Why is this, and how can I see all the models again?
#opencode-go
1 messages · Page 1 of 1 (latest)
That’s expected behavior from the current model allowlist/catalog split.
openclaw models set opencode-go/mimo-v2.5-pro doesn’t just set agents.defaults.model.primary; it also ensures that model exists in agents.defaults.models. Once agents.defaults.models exists, the normal models list --provider ... view becomes the configured/allowed view — so you only see the allowlisted model.
To browse the full provider catalog again, use:
openclaw models list --all --provider opencode-go
If you want OpenClaw’s normal model picker/list to keep showing all OpenCode Go models dynamically, add a provider-wide allowlist entry:
openclaw config set agents.defaults.models '{"opencode-go/*":{}}' --strict-json --merge
Then openclaw models list --provider opencode-go should show the discovered Opencode Go catalog instead of only the one exact model. If it still doesn’t, run openclaw --version and openclaw config get agents.defaults.models --json so we can check whether you’re on a version before that behavior landed.
That didn't work really
openclaw models list --all --provider opencode-go
🦞 OpenClaw 2026.5.7 (unknown) — I don't sleep, I just enter low-power mode and dream of clean diffs.
Model Input Ctx Local Auth Tags
opencode-go/mimo-v2.5-pro text 195k no yes default
opencode-go/deepseek-v4-flash text 195k no yes fallback#1
opencode-go/* text 195k no yes configured
node@ef5cb21bb0f6:~/.openclaw$ openclaw models list --provider opencode-go
🦞 OpenClaw 2026.5.7 (unknown) — Deployed locally, trusted globally, debugged eternally.
Model Input Ctx Local Auth Tags
opencode-go/mimo-v2.5-pro text 195k no yes default
opencode-go/deepseek-v4-flash text 195k no yes fallback#1
opencode-go/* text 195k no yes configured
Ah, yep — thanks for pasting the output. My --all suggestion clearly isn’t enough on your build. Sorry, that was too glib from me.
What your output shows is that OpenClaw is only seeing the configured allowlist rows for opencode-go, not the built-in/discovered Go catalog. The opencode-go/* row being printed literally is the giveaway: it’s configured, but not expanding into provider catalog rows.
Two likely causes:
- You now have
agents.defaults.modelsset, so the list is allowlist-driven. - Or there’s a manual/custom
models.providers.opencode-gooverride, which can shadow the built-in OpenCode Go catalog.
Can you run these?
openclaw config get agents.defaults.models --json
openclaw config get models.mode --json
openclaw config get models.providers.opencode-go --json
openclaw doctor
Quick workaround if you don’t need a model allowlist: remove the allowlist and keep the primary model set directly:
openclaw config unset agents.defaults.models
openclaw config set agents.defaults.model.primary "opencode-go/mimo-v2.5-pro"
Then retry:
openclaw models list --provider opencode-go
If models.providers.opencode-go exists, that’s probably the real culprit — OpenCode Go is built in, and a manual provider block can override the bundled catalog. In that case, remove the override instead:
openclaw config unset models.providers.opencode-go
Then restart/reload and list again. If doctor reports an OpenCode provider override warning, that confirms it.
$ openclaw config get agents.defaults.models --json
{
"openrouter/openrouter/free": {},
"ollama/kimi-k2.6:cloud": {},
"kilocode/kilo-auto/free": {},
"opencode-go/*": {}
}
$ openclaw config get models.mode --json
Config path not found: models.mode
$ openclaw config get models.providers.opencode-go --json
Config path not found: models.providers.opencode-go
That config is useful — you don’t have models.mode: replace, and you don’t have a manual models.providers.opencode-go override. So this looks like a real bug/regression in the models list --provider opencode-go path for provider-wide wildcard allowlists.
The docs say opencode-go/* should keep provider discovery dynamic, but on 2026.5.7 it’s being treated as a literal configured row:
opencode-go/* ... configured
So: your config is reasonable; the list command is not expanding that wildcard for this provider.
Workarounds:
- To browse the full catalog right now, temporarily remove the allowlist and set the primary directly:
openclaw config unset agents.defaults.models
openclaw config set agents.defaults.model.primary "opencode-go/mimo-v2.5-pro"
openclaw models list --provider opencode-go
Important: use config set agents.defaults.model.primary, not models set, because models set will recreate agents.defaults.models with the selected model.
- If you need to keep a strict allowlist, explicitly add the Go models you care about instead of
opencode-go/*until this is fixed.
Also worth trying once before changing config:
openclaw models list --all | grep '^opencode-go/'
If the unfiltered --all shows them, then only the provider-filtered/wildcard path is broken. If it doesn’t, the bundled Go catalog isn’t being loaded at all on that install.