diff --git a/src/resources/extensions/gsd/commands-prefs-wizard.ts b/src/resources/extensions/gsd/commands-prefs-wizard.ts index 5ca8faf79..7a475fe54 100644 --- a/src/resources/extensions/gsd/commands-prefs-wizard.ts +++ b/src/resources/extensions/gsd/commands-prefs-wizard.ts @@ -277,10 +277,17 @@ async function configureModels(ctx: ExtensionCommandContext, prefs: Record a.id.localeCompare(b.id)); } - // Build provider menu with model counts + // Display names for providers in the preferences wizard UI. + const PROVIDER_DISPLAY_NAMES: Record = { anthropic: "anthropic-api" }; + const displayName = (p: string) => PROVIDER_DISPLAY_NAMES[p] ?? p; + + // Build provider menu with model counts (display name → real name lookup) + const displayToReal = new Map(); const providerOptions = providers.map(p => { const count = byProvider.get(p)!.length; - return `${p} (${count} models)`; + const label = `${displayName(p)} (${count} models)`; + displayToReal.set(label, p); + return label; }); providerOptions.push("(keep current)", "(clear)", "(type manually)"); @@ -310,14 +317,14 @@ async function configureModels(ctx: ExtensionCommandContext, prefs: Record m.id); modelOptions.push("(keep current)", "(clear)"); - const modelChoice = await ctx.ui.select(`${phaseLabel} — ${providerName}:`, modelOptions); + const modelChoice = await ctx.ui.select(`${phaseLabel} — ${displayName(providerName)}:`, modelOptions); if (modelChoice && typeof modelChoice === "string" && modelChoice !== "(keep current)") { if (modelChoice === "(clear)") { delete models[phase];