diff --git a/src/api/services/provider-presets.ts b/src/api/services/provider-presets.ts
index d4d1d1a0..8688cf12 100644
--- a/src/api/services/provider-presets.ts
+++ b/src/api/services/provider-presets.ts
@@ -38,7 +38,7 @@ export const PROVIDER_PRESETS: ProviderPreset[] = [
description: '349+ models from OpenAI, Anthropic, Google, Meta',
baseUrl: OPENROUTER_BASE_URL,
defaultProfileName: 'openrouter',
- defaultModel: 'anthropic/claude-sonnet-4',
+ defaultModel: 'anthropic/claude-opus-4.5',
apiKeyPlaceholder: 'sk-or-...',
apiKeyHint: 'Get your API key at openrouter.ai/keys',
category: 'recommended',
diff --git a/ui/src/components/shared/confirm-dialog.tsx b/ui/src/components/shared/confirm-dialog.tsx
index 43d7f940..c680a278 100644
--- a/ui/src/components/shared/confirm-dialog.tsx
+++ b/ui/src/components/shared/confirm-dialog.tsx
@@ -39,7 +39,7 @@ export function ConfirmDialog({
Cancel
{confirmText}
diff --git a/ui/src/lib/provider-presets.ts b/ui/src/lib/provider-presets.ts
index 6761640c..c91a0ffd 100644
--- a/ui/src/lib/provider-presets.ts
+++ b/ui/src/lib/provider-presets.ts
@@ -34,7 +34,7 @@ export const PROVIDER_PRESETS: ProviderPreset[] = [
badge: '349+ models',
featured: true,
icon: '/icons/openrouter.svg',
- defaultModel: 'anthropic/claude-sonnet-4',
+ defaultModel: 'anthropic/claude-opus-4.5',
requiresApiKey: true,
apiKeyPlaceholder: 'sk-or-...',
apiKeyHint: 'Get your API key at openrouter.ai/keys',
diff --git a/ui/src/pages/api.tsx b/ui/src/pages/api.tsx
index dce6f8c7..0152d04a 100644
--- a/ui/src/pages/api.tsx
+++ b/ui/src/pages/api.tsx
@@ -220,6 +220,7 @@ export function ApiPage() {
{selectedProfileData ? (
setDeleteConfirm(selectedProfileData.name)}
onHasChangesUpdate={setEditorHasChanges}
@@ -266,6 +267,7 @@ export function ApiPage() {
confirmText="Discard & Switch"
variant="destructive"
onConfirm={() => {
+ setEditorHasChanges(false);
setSelectedProfile(pendingSwitch);
setPendingSwitch(null);
}}