[Bug]: Subagent model resolution fails — opencode/mimo-v2.5-free resolves to non-existent nvidia/nemotron-3-nano-omni-30b-a3b-reasoning

Author: marcuslafCreated Sep 16, 2026Updated Sep 16, 2026

What happened, and what did you expect?

All subagent tasks (designer, oracle, fixer, explorer, librarian) fail immediately with:

Model not found: nvidia/nemotron-3-nano-omni-30b-a3b-reasoning. Did you mean: nvidia/nemotron-3-nano-omni-30b-a3b-reasoning?

The opencode provider incorrectly resolves mimo-v2.5-free to nvidia/nemotron-3-nano-omni-30b-a3b-reasoning, which does not exist in the Pollinations model registry.

Steps to reproduce

  1. Use the opencode-zen-free preset with model: "opencode/mimo-v2.5-free"
  2. Spawn any subagent (e.g., designer)
  3. Observe the error

oh-my-opencode.json

jsonc
{
  "preset": "opencode-zen-free"
  // All agents use model: "opencode/mimo-v2.5-free"
}

OpenCode version

Latest

oh-my-opencode-slim version

2.2.20

Operating system

Windows 11

Evidence from OpenCode database

sql
-- Designer sessions all resolve to nvidia model:
SELECT id, model, agent FROM session WHERE agent='designer';
-- Result: {"id":"nemotron-3-nano-omni-30b-a3b-reasoning","providerID":"nvidia","variant":"default"}

-- Available NVIDIA models in Pollinations (nemotron-3-nano-omni-30b-a3b-reasoning is NOT among them):
-- nvidia/nemotron-3.5-lightning
-- nvidia/nemotron-3-ultra

Analysis

This is a bug in the OpenCode core's provider resolution logic, not in OMO-Slim. The opencode provider maps mimo-v2.5-free to a non-existent nvidia model at runtime. OMO-Slim correctly passes the model string opencode/mimo-v2.5-free to OpenCode, but OpenCode's internal resolution produces the wrong model.

Possible workaround for OMO-Slim

Could OMO-Slim detect this resolution failure and fall back to a direct Pollinations model name (e.g., xiaomi/mimo-v2.5) instead of the opencode/ prefixed provider name?

Source: alvinunreal/oh-my-opencode-slim