You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
OpenCode Go has 12 models available. Since around May 14, 11 of them return "Insufficient balance" when used for subagent spawning via the Task tool. Only minimax-m2.7 works.
Steps to reproduce
Have an active OpenCode Go subscription (0% usage on dashboard)
Configure oh-my-openagent or opencode.json to use any opencode-go/ model except minimax-m2.7
Call task(category="quick", ...) or task(subagent_type="oracle", ...) to spawn a subagent
Observe the error
Expected behavior
Subagents should spawn successfully using the configured opencode-go/ model, as they did before May 14.
Same pattern of failures: upstream provider accounts (DeepSeek, Moonshot, ZhipuAI, etc.) have depleted prepaid balances. This has happened repeatedly (Kimi/Moonshot in April, DeepSeek on May 14, mimo on May 17).
This is especially impactful for multi-agent orchestration workflows (Task tool -> subagents, UltraWork/Team-UltraWork modes) which are common when using orchestrator plugins like oh-my-openagent.
Suggested fix
The error message should differentiate between "your billing is exhausted" and "OpenCode Go upstream provider is temporarily unavailable". A status endpoint showing which upstream providers are degraded would also help users understand the issue without having to dig through GitHub issues.
No issue template was used. Please use one of the three required templates: Bug Report, Feature Request, or Question
The issue contains an AI-generated wall of text with elaborate tables, multi-section root cause analysis, and suggested fixes — long AI-generated descriptions are not acceptable per our guidelines
Please edit this issue to address the above within 2 hours, or it will be automatically closed.
This issue might be a duplicate of existing issues. Please check:
Thanks for updating the issue! It now includes all the required information — clear reproduction steps, expected vs. actual behavior, test results, and system details. We appreciate you taking the time to fill this out properly.
After deeper investigation, I can now explain EXACTLY why this happens and why it is subagent-specific.
Root Cause: 3-Layer Chain
1. OpenCode API returns 402 for explicit model specification
When a subagent prompt is sent with an explicit model parameter (provider=opencode-go, model=deepseek-v4-flash), the API returns 402 "Insufficient balance". If no explicit model is passed, the API uses the agent's default model and the call succeeds. This was confirmed: subagent_type="general" (no explicit model) works with deepseek, while subagent_type="oracle" (explicit model from config) fails.
2. OMO plugin disables fallback chain when config model is set
When the user configures a model in oh-my-opencode.json (explicitCategoryModel is set), the fallback chain from CATEGORY_MODEL_REQUIREMENTS is replaced with undefined. This means if the configured model fails billing, there is NO automatic retry with alternative models from the hardcoded fallback chain.
3. Config fallback models only contain the same failing model
The config's fallback_models only included the same model that already failed. So the retry loop also fails.
Why Only Certain Models
Testing all 12 opencode-go/ models:
minimax-m2.5 / minimax-m2.7 (MiniMax upstream) -> works
Setting agent/category models to opencode-go/minimax-m2.5 with opencode-go/deepseek-v4-flash as fallback makes everything work. Main session can still use deepseek-v4-flash directly.
Activity
github-actions commentedon May 18, 2026
This issue doesn't fully meet our contributing guidelines.
What needs to be fixed:
Please edit this issue to address the above within 2 hours, or it will be automatically closed.
This issue might be a duplicate of existing issues. Please check:
If you believe this was flagged incorrectly, please let a maintainer know.
github-actions commentedon May 18, 2026
Thanks for updating the issue! It now includes all the required information — clear reproduction steps, expected vs. actual behavior, test results, and system details. We appreciate you taking the time to fill this out properly.
tjddnjs124 commentedon May 18, 2026
Precision Root Cause Analysis Update
After deeper investigation, I can now explain EXACTLY why this happens and why it is subagent-specific.
Root Cause: 3-Layer Chain
1. OpenCode API returns 402 for explicit model specification
When a subagent prompt is sent with an explicit model parameter (provider=opencode-go, model=deepseek-v4-flash), the API returns 402 "Insufficient balance". If no explicit model is passed, the API uses the agent's default model and the call succeeds. This was confirmed: subagent_type="general" (no explicit model) works with deepseek, while subagent_type="oracle" (explicit model from config) fails.
2. OMO plugin disables fallback chain when config model is set
When the user configures a model in oh-my-opencode.json (explicitCategoryModel is set), the fallback chain from CATEGORY_MODEL_REQUIREMENTS is replaced with undefined. This means if the configured model fails billing, there is NO automatic retry with alternative models from the hardcoded fallback chain.
3. Config fallback models only contain the same failing model
The config's fallback_models only included the same model that already failed. So the retry loop also fails.
Why Only Certain Models
Testing all 12 opencode-go/ models:
This matches previous upstream depletion events:
Workaround
Setting agent/category models to opencode-go/minimax-m2.5 with opencode-go/deepseek-v4-flash as fallback makes everything work. Main session can still use deepseek-v4-flash directly.
tjddnjs124 commentedon May 18, 2026
hello?
github-actions commentedon Jul 18, 2026
To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.