fix(coding-agent): apply modelOverrides to extension providers

closes #6367
This commit is contained in:
Mario Zechner
2026-07-09 11:22:35 +02:00
parent 4285712bae
commit c6251a866b
4 changed files with 82 additions and 7 deletions
+4 -4
View File
@@ -139,7 +139,7 @@ Set `api` at provider level (default for all models) or model level (override pe
| `headers` | Custom headers (see value resolution below) |
| `authHeader` | Set `true` to add `Authorization: Bearer <apiKey>` automatically |
| `models` | Array of model configurations |
| `modelOverrides` | Per-model overrides for built-in models on this provider |
| `modelOverrides` | Per-model overrides for built-in or extension-registered models on this provider |
For providers with `models`, non-built-in provider configs need `baseUrl` and an `api` value at either provider or model level. `apiKey` is not required to load the file: models become available when auth is configured through `/login`/`auth.json`, CLI `--api-key`, or provider `apiKey`. If no auth is configured, the models load but stay unavailable in `/model` and `--list-models`.
@@ -293,7 +293,7 @@ Merge semantics:
## Per-model Overrides
Use `modelOverrides` to customize specific built-in models without replacing the provider's full model list.
Use `modelOverrides` to customize built-in models and matching extension-registered models without replacing the provider's full model list.
```json
{
@@ -314,10 +314,10 @@ Use `modelOverrides` to customize specific built-in models without replacing the
}
```
`modelOverrides` supports these fields per model: `name`, `reasoning`, `input`, `cost` (partial), `contextWindow`, `maxTokens`, `headers`, `compat`.
`modelOverrides` supports these fields per model: `name`, `reasoning`, `thinkingLevelMap`, `input`, `cost` (partial), `contextWindow`, `maxTokens`, `headers`, `compat`.
Behavior notes:
- `modelOverrides` are applied to built-in provider models.
- `modelOverrides` are applied to built-in provider models and matching extension-registered provider models.
- Unknown model IDs are ignored.
- You can combine provider-level `baseUrl`/`headers` with `modelOverrides`.
- Overriding `name` changes model matching and secondary detail text only; the footer and primary model lists continue to show the model `id`.