Skip to content

[FEATURE]: Specify small_model per provider #16207

@rmagatti

Description

@rmagatti

Feature hasn't been suggested before.

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

Describe the enhancement you want to request

The Problem

Essentially, I go between multiple different providers, and for each one of them, the small model that I would like to use for tools like Explore, for example, is potentially different.
For example:

  • Anthropic: The small model I would like to be Haiku 4.5.
  • OpenAI: If I'm using the OpenAI provider, I want it to be something like GPT-5 mini.
  • OpenCode Zen: If I'm using OpenCode Zen, I can then set the small model to some free or open source, cheaper version as well.

Usage and Configurability

To outline how the usage and configurability of this new feature would actually work, as per what we already did here, we just added the ability to define the small model directly on the configured provider.
Here is what that looks like in the config:

{
  "providers": {
    "anthropic": {
      "model": "claude-3-7-sonnet-latest",
      "smallModel": "claude-3-5-haiku-latest"
    },
    "openai": {
      "model": "gpt-4o",
      "smallModel": "gpt-5-mini"
    },
    "opencode-zen": {
      "model": "default-zen-model",
      "smallModel": "meta-llama-3-8b-instruct"
    }
  }
}

How it actually works in practice:

  • Instead of having one global small model setting, the configuration lives on the provider level.
  • When I switch my active provider, sub-agents and tools automatically pick up the correct, specific small model for that environment.
  • This prevents me from having to manually reconfigure the small model every time I switch providers to avoid unnecessary costs or errors.
    So the feature request is essentially the ability to specify a small model per configured provider. Let me know what you think!

Metadata

Metadata

Assignees

Labels

coreAnything pertaining to core functionality of the application (opencode server stuff)discussionUsed for feature requests, proposals, ideas, etc. Open discussion

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions