From 3ebd67f35fe899f690d68f060dad06e4b3b38951 Mon Sep 17 00:00:00 2001 From: Stefan de Vogelaere Date: Wed, 21 Jan 2026 11:40:26 +0100 Subject: [PATCH] fix: hide Cursor models in selector when provider is disabled (#639) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix: hide Cursor models in selector when provider is disabled The Cursor Models section was appearing in model dropdown selectors even when the Cursor provider was toggled OFF in Settings → AI Providers. This fix adds a !isCursorDisabled check to the rendering condition, matching the pattern already used by Codex and OpenCode providers. This ensures consistency across all provider types. Fixes the issue where: - Codex/OpenCode correctly hide models when disabled - Cursor incorrectly showed models even when disabled * style: fix Prettier formatting --- .../settings-view/model-defaults/phase-model-selector.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/ui/src/components/views/settings-view/model-defaults/phase-model-selector.tsx b/apps/ui/src/components/views/settings-view/model-defaults/phase-model-selector.tsx index 364d435f..ef946238 100644 --- a/apps/ui/src/components/views/settings-view/model-defaults/phase-model-selector.tsx +++ b/apps/ui/src/components/views/settings-view/model-defaults/phase-model-selector.tsx @@ -522,6 +522,9 @@ export function PhaseModelSelector({ return [...staticModels, ...uniqueDynamic]; }, [dynamicOpencodeModels, enabledDynamicModelIds]); + // Check if providers are disabled (needed for rendering conditions) + const isCursorDisabled = disabledProviders.includes('cursor'); + // Group models (filtering out disabled providers) const { favorites, claude, cursor, codex, opencode } = useMemo(() => { const favs: typeof CLAUDE_MODELS = []; @@ -531,7 +534,6 @@ export function PhaseModelSelector({ const ocModels: ModelOption[] = []; const isClaudeDisabled = disabledProviders.includes('claude'); - const isCursorDisabled = disabledProviders.includes('cursor'); const isCodexDisabled = disabledProviders.includes('codex'); const isOpencodeDisabled = disabledProviders.includes('opencode'); @@ -1900,7 +1902,7 @@ export function PhaseModelSelector({ ); })} - {(groupedModels.length > 0 || standaloneCursorModels.length > 0) && ( + {!isCursorDisabled && (groupedModels.length > 0 || standaloneCursorModels.length > 0) && ( {/* Grouped models with secondary popover */} {groupedModels.map((group) => renderGroupedModelItem(group))}