/model displays effort from settings.json, ignoring CLAUDE_CODE_EFFORT_LEVEL env var override
Resolved 💬 5 comments Opened Mar 17, 2026 by ishassan Closed Apr 22, 2026
Description
The /model command does not reflect the effort level set via the CLAUDE_CODE_EFFORT_LEVEL environment variable. It only displays the value from settings.json, which can be misleading.
Additionally, /effort and /model show contradicting values, making it unclear which effort level is actually being used.
Steps to reproduce
- Set
export CLAUDE_CODE_EFFORT_LEVEL=mediumin your shell - Set
"effortLevel": "high"in~/.claude/settings.json - Start Claude Code
- Run
/model- showshigheffort - Run
/effort- showsmediumeffort
Expected
Both /model and /effort should show the same resolved effort level, accounting for env var precedence.
Actual
/model shows high (from settings.json), /effort shows medium (from env var). The user has no way to know which value is actually being applied.
Environment
- Model: Opus 4.6 (1M context)
- Platform: Linux (EC2)
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗