[FEATURE] Support custom model aliases in settings.json for Bedrock users
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
When using Claude Code with AWS Bedrock, I need to switch between different models frequently (Sonnet, Haiku, Opus). Currently, the only way to switch models is by typing the full model ID:
/model us.anthropic.claude-sonnet-4-20250514-v1:0
These model IDs are long, hard to remember, and error-prone to type manually.
Proposed Solution
Support a models array in ~/.claude/settings.json that allows defining custom aliases for model IDs:
{
"models": [
{
"id": "sonnet",
"name": "Claude Sonnet 4",
"provider": "bedrock",
"modelId": "us.anthropic.claude-sonnet-4-20250514-v1:0"
},
{
"id": "haiku",
"name": "Claude Haiku 4.5",
"provider": "bedrock",
"modelId": "us.anthropic.claude-haiku-4-5-20251001-v1:0"
},
{
"id": "opus",
"name": "Claude Opus 4",
"provider": "bedrock",
"modelId": "global.anthropic.claude-opus-4-5-20251101-v1:0"
}
],
"defaultModel": "haiku"
}
Then users could:
- See these models listed in /model picker
- Switch using the alias: /model sonnet
- Set a default model from the list
Alternative Solutions
- Shell aliases like alias claude-sonnet='claude --model us.anthropic...' - works but only for starting new sessions
- Copying model IDs from a text file - cumbersome
- Using ANTHROPIC_MODEL env var - requires restarting Claude Code to switch
Priority
Medium - Would be very helpful
Feature Category
CLI commands and flags
Use Case Example
_No response_
Additional Context
- Claude Code version: 2.0.15
- Provider: AWS Bedrock (CLAUDE_CODE_USE_BEDROCK=1)
- OS: macOS
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗