opencode icon indicating copy to clipboard operation
opencode copied to clipboard

[Feature Request] Model-Provider Based Theme Auto-Selection

Open Jos-few43 opened this issue 2 weeks ago • 0 comments

Summary

Add native support for automatically assigning themes based on the selected LLM provider or model. This would allow users to visually distinguish between different AI models in their terminal.

Use Case

When working with multiple AI coding assistants simultaneously (e.g., Claude for complex coding, GPT-4 for quick tasks, Grok for exploration), having distinct visual themes per model makes it immediately obvious which model is active in each terminal window.

Proposed Solutions

Option A: Model-Theme Mapping in Config

Add support for a modelThemes mapping in the config:

{
  "modelThemes": {
    "anthropic/*": "anthropic",
    "google/*": "google",
    "xai/*": "xai",
    "openai/*": "openai"
  }
}

Option B: Provider-Default Themes

Allow providers to specify default themes:

{
  "provider": {
    "anthropic": {
      "theme": "anthropic-orange"
    }
  }
}

Option C: Model Config Theme Property

Allow specifying theme per model:

{
  "provider": {
    "anthropic": {
      "models": {
        "claude-sonnet-4-5": {
          "theme": "anthropic-orange"
        }
      }
    }
  }
}

Benefits

  1. Visual Clarity: Immediately identify which AI model is active
  2. Reduced Errors: Avoid accidentally using the wrong model
  3. Better Workflow: Multiple terminals with different models become visually distinct
  4. Extensible: Users can customize themes for their preferred models

Workaround (Current Solution)

I've created a wrapper script that achieves this:

  • Detects provider from model ID (format: provider/model-id)
  • Automatically applies matching theme
  • Supports 8+ providers with custom themes
  • Easy to extend with new providers

Location: ~/.config/opencode/scripts/opencode-model-theme

References

This is a common feature request pattern in terminal AI tools. Similar functionality exists in:

  • Some VS Code extensions for AI assistants
  • Claude Code's model switching indicators

Additional Context

  • This could also be extended to support different themes for different agents (build vs plan)
  • The feature should be backward compatible with existing theme configurations
  • Consider adding a UI indicator showing current model/theme in the status bar

Would love to see this as a native feature! The wrapper works great, but native support would be cleaner and more maintainable.

Jos-few43 avatar Jan 02 '26 08:01 Jos-few43