refactor(cursor-models): remove tier property from Cursor model configurations

- Removed the 'tier' property from Cursor model configurations and related UI components.
- Updated relevant files to reflect the removal of tier-related logic and display elements.
- This change simplifies the model structure and UI, focusing on essential attributes.
This commit is contained in:
Kacper
2026-01-01 20:00:40 +01:00
parent 3b3e61da8d
commit 63b9f52d6b
6 changed files with 0 additions and 38 deletions

View File

@@ -959,7 +959,6 @@ export class CursorProvider extends CliProvider {
modelString: id, modelString: id,
provider: 'cursor', provider: 'cursor',
description: config.description, description: config.description,
tier: config.tier === 'pro' ? ('premium' as const) : ('basic' as const),
supportsTools: true, supportsTools: true,
supportsVision: false, supportsVision: false,
})); }));

View File

@@ -114,11 +114,6 @@ export function AgentModelSelector({
Thinking Thinking
</span> </span>
)} )}
{model.tier === 'pro' && (
<span className="text-[10px] px-1.5 py-0.5 rounded bg-amber-500/10 text-amber-600 dark:text-amber-400">
Pro
</span>
)}
</div> </div>
<span className="text-xs text-muted-foreground">{model.description}</span> <span className="text-xs text-muted-foreground">{model.description}</span>
</div> </div>

View File

@@ -10,7 +10,6 @@ export type ModelOption = {
badge?: string; badge?: string;
provider: ModelProvider; provider: ModelProvider;
hasThinking?: boolean; hasThinking?: boolean;
tier?: 'free' | 'pro';
}; };
export const CLAUDE_MODELS: ModelOption[] = [ export const CLAUDE_MODELS: ModelOption[] = [
@@ -48,7 +47,6 @@ export const CURSOR_MODELS: ModelOption[] = Object.entries(CURSOR_MODEL_MAP).map
description: config.description, description: config.description,
provider: 'cursor' as ModelProvider, provider: 'cursor' as ModelProvider,
hasThinking: config.hasThinking, hasThinking: config.hasThinking,
tier: config.tier,
}) })
); );

View File

@@ -180,14 +180,6 @@ export function ModelSelector({
Thinking Thinking
</Badge> </Badge>
)} )}
{option.tier && (
<Badge
variant={option.tier === 'free' ? 'default' : 'secondary'}
className={cn('text-xs', isSelected && 'bg-primary-foreground/20')}
>
{option.tier}
</Badge>
)}
</div> </div>
</button> </button>
); );

View File

@@ -117,9 +117,6 @@ export function CursorModelConfiguration({
<p className="text-xs text-muted-foreground">{model.description}</p> <p className="text-xs text-muted-foreground">{model.description}</p>
</div> </div>
</div> </div>
<Badge variant={model.tier === 'free' ? 'default' : 'secondary'}>
{model.tier}
</Badge>
</div> </div>
); );
})} })}

View File

@@ -30,7 +30,6 @@ export interface CursorModelConfig {
label: string; label: string;
description: string; description: string;
hasThinking: boolean; hasThinking: boolean;
tier: 'free' | 'pro';
} }
/** /**
@@ -42,126 +41,108 @@ export const CURSOR_MODEL_MAP: Record<CursorModelId, CursorModelConfig> = {
label: 'Auto (Recommended)', label: 'Auto (Recommended)',
description: 'Automatically selects the best model for each task', description: 'Automatically selects the best model for each task',
hasThinking: false, hasThinking: false,
tier: 'free',
}, },
'composer-1': { 'composer-1': {
id: 'composer-1', id: 'composer-1',
label: 'Composer 1', label: 'Composer 1',
description: 'Cursor Composer agent model optimized for multi-file edits', description: 'Cursor Composer agent model optimized for multi-file edits',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'sonnet-4.5': { 'sonnet-4.5': {
id: 'sonnet-4.5', id: 'sonnet-4.5',
label: 'Claude Sonnet 4.5', label: 'Claude Sonnet 4.5',
description: 'Anthropic Claude Sonnet 4.5 via Cursor', description: 'Anthropic Claude Sonnet 4.5 via Cursor',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'sonnet-4.5-thinking': { 'sonnet-4.5-thinking': {
id: 'sonnet-4.5-thinking', id: 'sonnet-4.5-thinking',
label: 'Claude Sonnet 4.5 (Thinking)', label: 'Claude Sonnet 4.5 (Thinking)',
description: 'Claude Sonnet 4.5 with extended thinking enabled', description: 'Claude Sonnet 4.5 with extended thinking enabled',
hasThinking: true, hasThinking: true,
tier: 'pro',
}, },
'opus-4.5': { 'opus-4.5': {
id: 'opus-4.5', id: 'opus-4.5',
label: 'Claude Opus 4.5', label: 'Claude Opus 4.5',
description: 'Anthropic Claude Opus 4.5 via Cursor', description: 'Anthropic Claude Opus 4.5 via Cursor',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'opus-4.5-thinking': { 'opus-4.5-thinking': {
id: 'opus-4.5-thinking', id: 'opus-4.5-thinking',
label: 'Claude Opus 4.5 (Thinking)', label: 'Claude Opus 4.5 (Thinking)',
description: 'Claude Opus 4.5 with extended thinking enabled', description: 'Claude Opus 4.5 with extended thinking enabled',
hasThinking: true, hasThinking: true,
tier: 'pro',
}, },
'opus-4.1': { 'opus-4.1': {
id: 'opus-4.1', id: 'opus-4.1',
label: 'Claude Opus 4.1', label: 'Claude Opus 4.1',
description: 'Anthropic Claude Opus 4.1 via Cursor', description: 'Anthropic Claude Opus 4.1 via Cursor',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gemini-3-pro': { 'gemini-3-pro': {
id: 'gemini-3-pro', id: 'gemini-3-pro',
label: 'Gemini 3 Pro', label: 'Gemini 3 Pro',
description: 'Google Gemini 3 Pro via Cursor', description: 'Google Gemini 3 Pro via Cursor',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gemini-3-flash': { 'gemini-3-flash': {
id: 'gemini-3-flash', id: 'gemini-3-flash',
label: 'Gemini 3 Flash', label: 'Gemini 3 Flash',
description: 'Google Gemini 3 Flash (faster)', description: 'Google Gemini 3 Flash (faster)',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gpt-5.2': { 'gpt-5.2': {
id: 'gpt-5.2', id: 'gpt-5.2',
label: 'GPT-5.2', label: 'GPT-5.2',
description: 'OpenAI GPT-5.2 via Cursor', description: 'OpenAI GPT-5.2 via Cursor',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gpt-5.1': { 'gpt-5.1': {
id: 'gpt-5.1', id: 'gpt-5.1',
label: 'GPT-5.1', label: 'GPT-5.1',
description: 'OpenAI GPT-5.1 via Cursor', description: 'OpenAI GPT-5.1 via Cursor',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gpt-5.2-high': { 'gpt-5.2-high': {
id: 'gpt-5.2-high', id: 'gpt-5.2-high',
label: 'GPT-5.2 High', label: 'GPT-5.2 High',
description: 'OpenAI GPT-5.2 with high compute', description: 'OpenAI GPT-5.2 with high compute',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gpt-5.1-high': { 'gpt-5.1-high': {
id: 'gpt-5.1-high', id: 'gpt-5.1-high',
label: 'GPT-5.1 High', label: 'GPT-5.1 High',
description: 'OpenAI GPT-5.1 with high compute', description: 'OpenAI GPT-5.1 with high compute',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gpt-5.1-codex': { 'gpt-5.1-codex': {
id: 'gpt-5.1-codex', id: 'gpt-5.1-codex',
label: 'GPT-5.1 Codex', label: 'GPT-5.1 Codex',
description: 'OpenAI GPT-5.1 Codex for code generation', description: 'OpenAI GPT-5.1 Codex for code generation',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gpt-5.1-codex-high': { 'gpt-5.1-codex-high': {
id: 'gpt-5.1-codex-high', id: 'gpt-5.1-codex-high',
label: 'GPT-5.1 Codex High', label: 'GPT-5.1 Codex High',
description: 'OpenAI GPT-5.1 Codex with high compute', description: 'OpenAI GPT-5.1 Codex with high compute',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gpt-5.1-codex-max': { 'gpt-5.1-codex-max': {
id: 'gpt-5.1-codex-max', id: 'gpt-5.1-codex-max',
label: 'GPT-5.1 Codex Max', label: 'GPT-5.1 Codex Max',
description: 'OpenAI GPT-5.1 Codex Max capacity', description: 'OpenAI GPT-5.1 Codex Max capacity',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
'gpt-5.1-codex-max-high': { 'gpt-5.1-codex-max-high': {
id: 'gpt-5.1-codex-max-high', id: 'gpt-5.1-codex-max-high',
label: 'GPT-5.1 Codex Max High', label: 'GPT-5.1 Codex Max High',
description: 'OpenAI GPT-5.1 Codex Max with high compute', description: 'OpenAI GPT-5.1 Codex Max with high compute',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
grok: { grok: {
id: 'grok', id: 'grok',
label: 'Grok', label: 'Grok',
description: 'xAI Grok via Cursor', description: 'xAI Grok via Cursor',
hasThinking: false, hasThinking: false,
tier: 'pro',
}, },
}; };