OpenCode v2 silently drops legacy V1 provider blocks, breaking all Go model credentials

yindongfang509 · ghdev · 2026-10-11

What happened

After upgrading to OpenCode v2.0.26, every Go model failed with Missing API key / Invalid credential — all 31 Go models were unusable.

Root cause

A leftover V1-format provider block (provider.opencode-go with npm + options) in opencode.. During config normalization, v2 silently skips the block (only a WARN: action="skipped malformed recognized value"), while credentials actually live under the OAuth opencode integration — leaving a broken half-migrated state.

Fix

Simply delete the legacy provider block: keep the OAuth credential in auth./database, restart, and all Go models work again with no other change.

Suggested improvement

The issue author argues v2 should migrate legacy blocks properly or fail with a clear diagnostic, and a silently-dropped block shouldn't shadow the OAuth credential path.

Original post →

More from coding & agent

coding & agent channel →