[FEATURE] Allow managed settings to control the "Default" model and model display labels in /model picker

Open 💬 1 comment Opened Jun 4, 2026 by HaithamMaya

Feature Request

Two related asks for enterprise/proxy deployments using ANTHROPIC_CUSTOM_MODEL_OPTION:

1. "Default" should respect the model setting

When managed settings sets "model": "my-custom-model", the /model picker should label that model as "Default" — or at minimum, provide a defaultModel setting to control this independently.

Currently, "Default" is hardcoded to the subscription tier (Opus on Max/Enterprise, Sonnet on Pro) regardless of what model or availableModels specify. This creates confusion when deploying a custom model as the organizational standard.

Proposed solutions (any would work):

  • Option A: If model is set in managed settings, treat it as the "Default" in the picker
  • Option B: New defaultModel field in settings.json that controls what "Default" resolves to, independently from per-family aliases (opus, sonnet, haiku)
  • Option C: New env var ANTHROPIC_DEFAULT_MODEL (distinct from ANTHROPIC_DEFAULT_OPUS_MODEL etc.) that overrides only the "Default" row

2. Better control of display labels in the model picker

Related to #62694 — the ANTHROPIC_DEFAULT_*_MODEL_NAME env vars work in the status bar but not consistently in the /model picker. More broadly, enterprise deployments need to control how custom and aliased models are presented.

Proposed:

  • ANTHROPIC_CUSTOM_MODEL_OPTION_NAME should be reflected as the display label in the picker (not just the status bar)
  • A general modelDisplayNames setting (or per-model _NAME env vars that actually work everywhere) to override labels:
{
  "modelDisplayNames": {
    "my-custom-model": "Recommended",
    "sonnet": "Claude Sonnet 4.6",
    "opus": "Claude Opus 4.7"
  }
}

This lets deployments present clear naming without users needing to understand underlying model IDs.

Current Behavior

| Setting | Effect |
|---------|--------|
| "model": "my-custom-model" | Sets initial selection, but "Default" still shows Opus |
| ANTHROPIC_DEFAULT_OPUS_MODEL | Controls both "Default" AND the "opus" alias (can't decouple) |
| ANTHROPIC_CUSTOM_MODEL_OPTION_NAME | Shows in status bar, inconsistent in picker |
| availableModels ordering | Respected, but "Default" always appears separately |

Desired Behavior

  • model in managed settings (or a new defaultModel) controls the "Default" badge
  • Per-family aliases remain independent
  • Display labels are controllable and consistent across status bar and picker

Environment

  • Claude Code version: 2.1.x (stable channel)
  • Deployment: Enterprise managed settings via proxy

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗