Allow specifying a model *family* (e.g. `opus`, `sonnet`, `fable`) that resolves to its latest stable version
- Ngôn ngữ chính
- Shell
- Star
- 11.2k
- Fork
- 1.9k
- Merge trung bình
- 14 giờ 16 phút
- Pull request đã merge (30 ngày)
- 6
Mô tả
## 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 ` 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).
Hướng dẫn đóng góp
Hướng nghiên cứu
Start by tracing the existing model resolution paths for settings.json, --model, and COPILOT_MODEL. The work is done when family aliases select the newest stable version available to the account, preserve source precedence, and fall through or report a clear error when unavailable.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- shell
- Lĩnh vực
- cli
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Ít trao đổi
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 48/100