Skip to content

Allow specifying a model *family* (e.g. opus, sonnet, fable) that resolves to its latest stable version #4068

Description

@alistardust

Describe the feature or problem you'd like to solve

A default currently must pin an exact version (e.g. claude-opus-4.8). The Opus family alone has shipped 4.5, 4.6, 4.7, and 4.8 (plus -fast variants), so anyone who wants "always the newest Opus" must manually edit their config on each release. I'd like to express a stable family preference and let the CLI track the newest version automatically. (I searched existing issues and did not find a duplicate family-level request; #3466 covers related model-selection UX pain but is a distinct problem.)

Proposed solution

Accept a version-less family alias wherever a model is specified — settings.json "model", --model, and COPILOT_MODEL — e.g. "model": "opus", copilot --model sonnet, COPILOT_MODEL=fable. Resolution rules:

  • Resolves to the highest stable version available to the account in that family, re-evaluated at each launch; prefer stable over -fast/preview variants when both exist.
  • A family alias occupies the same precedence tier as an exact model id would in that source (so an explicit --model <exact-id> still overrides a settings.json family alias, as today).
  • If the family is unavailable to the account, fall through to the next resolver tier (or emit a clear error), rather than silently using an unrelated model.
  • Complements the existing auto selector (which lets Copilot pick automatically): a family alias keeps the family fixed while auto-tracking versions within it.

Example prompts or workflows

  • copilot --model opus -p "refactor this" keeps using the newest Opus across upgrades with no config churn.
  • A user sets "model": "sonnet" once and doesn't re-edit config on each Sonnet release.

Additional context

Reduces how often users must interact with the model picker as new versions ship (see #3466 for current picker UX friction).

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:configurationConfig files, instruction files, settings, and environment variablesarea:modelsModel selection, availability, switching, rate limits, and model-specific behavior

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions