From cc7d651a9e9304d13c581511038b889b61588b38 Mon Sep 17 00:00:00 2001 From: Kieran Klukas Date: Tue, 12 May 2026 13:58:42 -0400 Subject: [PATCH] fix(config): use large model for small if not configured (#2873) --- internal/config/load.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/internal/config/load.go b/internal/config/load.go index b705c0f4060ca0b17975949ecd3a8709bc0d9cc0..9aefbb26607482ed195e6beb05214e63ba4187a0 100644 --- a/internal/config/load.go +++ b/internal/config/load.go @@ -697,6 +697,25 @@ func configureSelectedModels(store *ConfigStore, knownProviders []catwalk.Provid small.Think = smallModelSelected.Think } } + + // When small isn't explicitly configured and the provider isn't a + // known built-in, use the large model as the small model. This + // prevents two different models from being requested concurrently + // for local/openai-compat providers. + if !smallModelConfigured { + isKnownProvider := false + for _, kp := range knownProviders { + if string(kp.ID) == small.Provider { + isKnownProvider = true + break + } + } + if !isKnownProvider { + slog.Warn("Using large model as small model for unknown provider", "provider", large.Provider, "model", large.Model) + small = large + } + } + c.Models[SelectedModelTypeLarge] = large c.Models[SelectedModelTypeSmall] = small return nil