diff --git a/internal/fur/provider/provider.go b/internal/fur/provider/provider.go index 44a8cb419f55e80bf3eeb2d92b029ceec962c44a..2bfe95a5bc3db4f1e52feebcaf7d484f4d5de948 100644 --- a/internal/fur/provider/provider.go +++ b/internal/fur/provider/provider.go @@ -27,6 +27,7 @@ const ( InferenceProviderBedrock InferenceProvider = "bedrock" InferenceProviderVertexAI InferenceProvider = "vertexai" InferenceProviderXAI InferenceProvider = "xai" + InferenceProviderGROQ InferenceProvider = "groq" InferenceProviderOpenRouter InferenceProvider = "openrouter" ) @@ -68,6 +69,7 @@ func KnownProviders() []InferenceProvider { InferenceProviderBedrock, InferenceProviderVertexAI, InferenceProviderXAI, + InferenceProviderGROQ, InferenceProviderOpenRouter, } } diff --git a/internal/tui/components/chat/splash/splash.go b/internal/tui/components/chat/splash/splash.go index c05e2d9947222298dd141c9e762d33f99883b467..0ba04f6d16f2b93ac5556cd204fe63bcca5594e2 100644 --- a/internal/tui/components/chat/splash/splash.go +++ b/internal/tui/components/chat/splash/splash.go @@ -105,6 +105,7 @@ func (s *splashCmp) SetOnboarding(onboarding bool) { "openai", "gemini", "xai", + "groq", "openrouter", } for _, p := range providers { diff --git a/internal/tui/components/dialogs/models/list.go b/internal/tui/components/dialogs/models/list.go index 8425b8f2c04569749a33867fb7e14e4b628d019e..ae09ac9ce6acfa8cb41a34a241a5e473ecd4ac81 100644 --- a/internal/tui/components/dialogs/models/list.go +++ b/internal/tui/components/dialogs/models/list.go @@ -98,14 +98,17 @@ func (m *ModelListComponent) SetModelType(modelType int) tea.Cmd { // First, add any configured providers that are not in the known providers list // These should appear at the top of the list - knownProviders := provider.KnownProviders() + knownProviders, err := config.Providers() + if err != nil { + return util.ReportError(err) + } for providerID, providerConfig := range cfg.Providers { if providerConfig.Disable { continue } // Check if this provider is not in the known providers list - if !slices.Contains(knownProviders, provider.InferenceProvider(providerID)) { + if !slices.ContainsFunc(knownProviders, func(p provider.Provider) bool { return p.ID == provider.InferenceProvider(providerID) }) { // Convert config provider to provider.Provider format configProvider := provider.Provider{ Name: providerConfig.Name,