Repository navigation
[Feature]: Separate OpenCode reasoning effort and agent (Build/Plan) into distinct composer controls #18013
Replies: 1 comment
TriageThis matches the current composer, and it is a UI request rather than a broken control. Reasoning and agent are already stored as separate model options ( Codex, Claude, and Cursor do not put an agent in that menu. Their effort control is the same traits picker, so it usually shows only the effort. Build/Plan is a separate footer toggle, and only while Settings > Legacy features > Plan mode is on ( Turning the legacy Build/Plan toggle on for OpenCode would not cover this. That toggle is only No existing issue tracks this split. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Area
apps/web, apps/server
Problem / Observed Behavior
When using the OpenCode provider in T3 Code, the reasoning effort (model variant, e.g.
Low/Medium/High/Max) and the agent mode (Build/Plan) are bundled into a single compound dropdown trigger in the composer footer (e.g.Max · BuildorMedium · Build).Clicking this trigger opens a single shared popover menu grouping both Reasoning and Agent together:
This contrasts with Codex and Claude, where reasoning/effort is exposed as its own dedicated input control separate from interaction/mode controls.
Background
In PR #9287 (
fix(opencode): show Reasoning selector for OpenCode models, addressing #2144), the OpenCodevariantdescriptor was renamed toReasoningand synthesized into the provider'soptionDescriptors. BecauseTraitsPickerjoins all select option descriptors together (labels.join(' · ')), OpenCode's reasoning and agent options ended up rendered as a single joint trigger (Max · Build).Expected Behavior
Reasoning effort and Agent selection should be distinct, separate controls in the composer:
Low,Medium,High,Max/xhigh), matching the UX pattern of Codex and Claude.Build,Plan), aligned with how interaction modes are handled.Steps to Reproduce
Max · Build) is displayed that bundles both Reasoning and Agent options into one menu.Why this matters
All reactions