opencode icon indicating copy to clipboard operation
opencode copied to clipboard

[FEATURE]: Add `--variant` flag to root `opencode` command

Open ekweible opened this issue 1 week ago • 2 comments

Feature hasn't been suggested before.

  • [x] I have verified this feature I'm about to request hasn't been suggested before.

Describe the enhancement you want to request

The --variant flag was added to opencode run in #6805 but is missing from the root opencode command.

Current Behavior

# Works
opencode run --model anthropic/claude-sonnet-4-20250514 --variant max "hello"
# Doesn't work - variant flag not recognized
opencode --model anthropic/claude-sonnet-4-20250514 --variant max --prompt "hello"

Expected Behavior

Both commands should support --variant.

This matters most when --prompt is provided since the model responds immediately - users can't control reasoning effort for that initial response.

Relevant Files

File Current State
src/cli/cmd/run.ts:90-93 Has --variant option
src/cli/cmd/tui/thread.ts Missing --variant option
src/cli/cmd/tui/context/args.tsx Args interface lacks variant

Implementation Notes

The variant infrastructure already exists in the TUI. Changes needed:

  1. thread.ts: Add --variant option to yargs builder
  2. args.tsx: Add variant?: string to Args interface
  3. thread.ts: Pass variant through to tui() args
  4. local.tsx: Initialize variant from CLI arg (similar to how args.model is handled at line 142)

The variant management (model.variant.set(), model.variant.current(), etc.) is already implemented in local.tsx:310-347, so this is just a CLI argument threading task.

ekweible avatar Jan 08 '26 17:01 ekweible