Skip to content

fix(opencode): generate reasoning variants for all OpenRouter models. - #30332

Merged
rekram1-node merged 8 commits into
anomalyco:devfrom
AnthonyMLau:fix/openrouter-reasoning-variants
Jun 9, 2026
Merged

fix(opencode): generate reasoning variants for all OpenRouter models.#30332
rekram1-node merged 8 commits into
anomalyco:devfrom
AnthonyMLau:fix/openrouter-reasoning-variants

Conversation

@AnthonyMLau

@AnthonyMLau AnthonyMLau commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

Issue for this PR

Closes #30216

Type of change

  • Bug fix
  • New feature
  • Refactor / code improvement
  • Documentation

What does this PR do?

The variants() function in the OpenRouter provider case returns {} for any model whose ID doesn't contain gpt, gemini-3, or claude, even when the model has capabilities.reasoning: true. OpenRouter's reasoning.effort parameter is provider-agnostic and works across all reasoning models, so this filter is unnecessarily restrictive.

The fix replaces the return {} with a fallback that generates default variants (none/minimal/low/medium/high/xhigh) for any reasoning-capable model routed through OpenRouter. GPT, Gemini, and Claude models keep their existing model-specific effort lists unchanged.

How did you verify your code works?

  • Built and ran the TUI via bun dev
  • Connected to OpenRouter and selected deepseek/deepseek-v4-pro — variants now appear in the Ctrl+T selector
  • Tested xhigh variant — produces a visible chain-of-thought trace before the final answer
  • Confirmed GPT models on OpenRouter still show their model-specific effort levels

Screenshots / recordings

Before:

image

After:

image image

Checklist

  • I have tested my changes locally
  • I have not included unrelated changes in this PR
@AnthonyMLau AnthonyMLau closed this Jun 3, 2026
@AnthonyMLau AnthonyMLau reopened this Jun 3, 2026
@AnthonyMLau AnthonyMLau changed the title fix(opencode): generate reasoning variants for all OpenRouter models Jun 3, 2026
@rekram1-node
rekram1-node merged commit 161247c into anomalyco:dev Jun 9, 2026
8 checks passed
shoootyou added a commit to shoootyou/opencode that referenced this pull request Jun 10, 2026
* test(core): cover skill directory output (anomalyco#31263)

* fix(opencode): avoid duplicate skill catalog (anomalyco#31269)

* chore(opencode): update MCP SDK to 1.29.0 (anomalyco#31268)

* chore: generate

* chore: update nix node_modules hashes

* run: make minimal mode more minimal (anomalyco#31227)

* chore: generate

* chore: update web and desktop code owners (anomalyco#31289)

* fix(desktop): few WSL bugs (anomalyco#31095)

* chore: generate

* fix(opencode): respect MCP server capabilities (anomalyco#31271)

* console: update email

* zen: fix

* fix(opencode): include acp pending tool input (anomalyco#31321)

* fix(lsp): resolve JDTLS root to topmost pom.xml in Java Maven multi-module projects (anomalyco#28761)

Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com>

* chore: generate

* fix(session): merge per-call tool rules into session permission (anomalyco#30529)

Co-authored-by: Simon Klee <hello@simonklee.dk>

* docs(go): update MiniMax M3 pricing (anomalyco#31350)

* fix: speed up fff file search (anomalyco#31366)

* chore: generate

* fix(stats): show new for leaderboard deltas

* fix: stabilize fff file results (anomalyco#31369)

* chore: generate

* fix(core): restore npm proxy agent patch (anomalyco#31373)

* chore: update nix node_modules hashes

* chore: upgrade OpenTUI to v0.3.4 (anomalyco#31326)

* chore: update nix node_modules hashes

* fix(core): disable fff trace logs (anomalyco#31380)

* fix(session): avoid sticky prompt tool overrides (anomalyco#31394)

* fix(opencode): await run event loop (anomalyco#31389)

* refactor(core): replace legacy logger with Effect logging (anomalyco#31310)

* chore: generate

* fix(tui): trim select footer action highlight (anomalyco#31411)

* fix(opencode): support MiniMax M3 thinking toggle (anomalyco#31426)

* fix: adjust item id stripping to happen prior to request signing (anomalyco#31429)

* fix(opencode): generate reasoning variants for all OpenRouter models. (anomalyco#30332)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>

* feat(app): add draft tab support to tabs store (anomalyco#31343)

* chore: generate

* fix(opencode): paginate MCP catalogs (anomalyco#31442)

* fix(opencode): pass abort signal to MCP tool calls (anomalyco#31455)

* feat(app): draft prompt state (anomalyco#31452)

* chore: generate

* feat(app): tabs help button (anomalyco#31454)

* feat: add "reasoning" as interleaved field option for vLLM providers (anomalyco#30477)

Co-authored-by: Ben Sandbrook <1126483+delta9000@users.noreply.github.com>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>

* fix(app): clip rounded session panels (anomalyco#31462)

* core: fix idle CPU use in file logger (anomalyco#31478)

* docs: add uninstall troubleshooting steps (anomalyco#31424)

Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>

* leave a breadcrumb comment about batchWindow zero (anomalyco#31508)

* chore: stats -> data

* test(core): avoid Windows worker close race (anomalyco#31532)

* refactor(tui): centralize application exit (anomalyco#31524)

* chore: generate

* feat(opencode): configure Cohere North model (anomalyco#31536)

* refactor(core): consolidate references (anomalyco#31539)

* feat(tui): show project copy in session list (anomalyco#31421)

* chore: generate

* fix(stats): use data branding assets

* drop citation_options from cohere (anomalyco#31543)

* zen: add north mini code model

* fix(data): timestamp formatting

* fix(opencode): support Claude Fable reasoning (anomalyco#31546)

* fix(mcp): log actionable connection statuses (anomalyco#31544)

* refactor(core): simplify location filesystem (anomalyco#31545)

* chore: generate

* chore: update nix node_modules hashes

* fix(opencode): restore effect error logging (anomalyco#31551)

* chore: generate

* feat(opencode): add typed application layer graph (anomalyco#31531)

* zen: add claude fable 5

* chore: generate

* refactor(mcp): simplify service helpers (anomalyco#31549)

* feat: add X-Session-Id header for proxy cache routing affinity (anomalyco#31511)

* zen: update email

* fix(desktop): update Electron stack and panel layout (anomalyco#31571)

* chore: generate

* chore: update nix node_modules hashes

---------

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: Simon Klee <hello@simonklee.dk>
Co-authored-by: Luke Parker <10430890+Hona@users.noreply.github.com>
Co-authored-by: Filip <34747899+neriousy@users.noreply.github.com>
Co-authored-by: Frank <frank@anoma.ly>
Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com>
Co-authored-by: huangli <areyouok@gmail.com>
Co-authored-by: Tommy D. Rossi <beats.by.morse@gmail.com>
Co-authored-by: Jack <jack@anoma.ly>
Co-authored-by: Adam <2363879+adamdotdevin@users.noreply.github.com>
Co-authored-by: Dax <mail@thdxr.com>
Co-authored-by: James Long <longster@gmail.com>
Co-authored-by: Anthony Lau <anthony.lau2000@live.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
Co-authored-by: Brendan Allan <14191578+Brendonovich@users.noreply.github.com>
Co-authored-by: Ben Sandbrook <sandbrookvt@gmail.com>
Co-authored-by: Ben Sandbrook <1126483+delta9000@users.noreply.github.com>
Co-authored-by: opencode-agent[bot] <219766164+opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: Sebastian <hasta84@gmail.com>
Co-authored-by: Songchao Wang <songchaow@outlook.com>
Co-authored-by: yui-soul <yui-soul@users.noreply.github.com>
avion23 pushed a commit to avion23/opencode that referenced this pull request Jun 10, 2026
…anomalyco#30332)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
thepagent pushed a commit to openabdev/openab that referenced this pull request Jun 12, 2026
…els (#1083)

OpenCode 1.16.x ships an ACP regression where OpenRouter reasoning models
(e.g. openrouter/google/gemini-3-flash) never emit a final
`agent_message_chunk` over ACP. The assistant text part is correctly
written into opencode's internal session storage (visible via
`opencode export <session_id>`) but the ACP server only emits
`usage_update` followed by `stopReason: end_turn`. From OpenAB's side
this surfaces as `(no response)` because src/adapter.rs falls back to
that string when no agent_message_chunk arrived during the prompt
window.

The upstream fix landed in opencode 1.17.0 as anomalyco/opencode#30332
("generate reasoning variants for all OpenRouter models"). 1.17.3 is
the latest 1.17.x verified end-to-end by a community reporter.

- Dockerfile.opencode: OPENCODE_VERSION 1.16.2 -> 1.17.3, with an inline
  comment block capturing the regression so the next bump preserves the
  >= 1.17.0 floor.
- docs/opencode.md: append a 'Minimum version for OpenRouter reasoning
  models' bullet to the Notes section, linking anomalyco/opencode#30332.

No Rust source touched; no behavior change in OpenAB itself.

Co-authored-by: wangyuyan-agent <wangyuyan-agent@users.noreply.github.com>
isaacfinnegan pushed a commit to isaacfinnegan/whispercode that referenced this pull request Jun 15, 2026
…anomalyco#30332)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
leduyphuc1702 pushed a commit to leduyphuc1702/opencode-workflow that referenced this pull request Jun 16, 2026
…anomalyco#30332)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
(cherry picked from commit 161247c)
markjaquith pushed a commit to markjaquith/opencode that referenced this pull request Jun 23, 2026
…anomalyco#30332)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
BenGu3 pushed a commit to BenGu3/opencode that referenced this pull request Jun 27, 2026
…anomalyco#30332)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
zackslash pushed a commit to zackslash/opencode that referenced this pull request Jun 28, 2026
…anomalyco#30332)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
MarsQiu007 referenced this pull request in MarsQiu007/openNovel Jul 31, 2026
… (#30332)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
banlanzs pushed a commit to banlanzs/opencode that referenced this pull request Aug 6, 2026
…anomalyco#30332)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants