Opus 4.6 was removed from the Desktop model picker (#49689). Here are 4 ways to pin your model.
Opus 4.7 has 50 known issues: 4x token consumption, safety classifier failure, data loss (50GB+), cache_read billing anomaly, and CLAUDE.md instructions being ignored. Pinning to Opus 4.6 avoids all of these.
claude --model claude-opus-4-6
This starts Claude Code with Opus 4.6 for this session only. You need to add the flag every time.
# Edit your user settings
# Location: ~/.claude/settings.json
{
"model": "claude-opus-4-6"
}
Create the file if it doesn't exist. This pins Opus 4.6 across all projects until you change it.
# Create in your project root
# Location: .claude/settings.json
{
"model": "claude-opus-4-6"
}
Useful if you want Opus 4.7 for some projects but not others. Project settings override user settings.
npx cc-safe-setup --install-example model-version-alert
Even after pinning, Claude Code can silently switch models mid-session. This hook checks every 50 tool calls and warns if Opus 4.7 is active. #49541
The safety classifier, data loss, and credential issues exist independent of model version. Install safety hooks for baseline protection:
npx cc-safe-setup
This adds 8 core hooks (rm-rf blocker, git protection, secret leak detection) in ~10 seconds.
# In Claude Code, type:
/model
# Or check settings:
cat ~/.claude/settings.json | grep model
The Safety Scanner can also detect your current model and identify missing protections.
707 safety hooks, all open source. One command to install.
View on GitHub Survival Guide (69+ issues) Token Checkup (free)