[BUG] Startup banner shows 'max effort' but /model selector shows 'High effort'

Resolved 💬 5 comments Opened Mar 25, 2026 by joeyimbasciano Closed Apr 26, 2026

Bug description

The startup banner and the /model selector show different effort levels on a fresh session launch.

  • Startup banner: "Opus 4.6 (1M context) with max effort · Claude Max"
  • Model selector (opened immediately after): "● High effort ← → to adjust"

I have CLAUDE_CODE_EFFORT_LEVEL set to max via environment variable. The startup banner correctly reflects this ("max effort"), but the /model selector shows "High effort" instead. It's unclear which effort level is actually being used for inference since the two UI surfaces disagree.

Steps to reproduce

  1. Set CLAUDE_CODE_EFFORT_LEVEL=max in your shell environment
  2. Launch claude
  3. Observe startup banner says "max effort"
  4. Open the model selector (e.g. /model)
  5. Observe it says "High effort"

Expected behavior

Both the startup banner and the model selector should show the same effort level ("max effort").

Environment

  • Claude Code v2.1.83
  • macOS
  • CLAUDE_CODE_EFFORT_LEVEL=max set as environment variable

Related issues

  • #38073 — TUI welcome screen shows stale effort after /model + /compact
  • #34633 — /effort always reports "max" regardless of /model changes
  • #34837 — effortLevel: 'max' not serialized to settings.json (likely root cause)
  • #35155 — /model reads from settings.json, ignoring env var override
  • #37773 — Status bar shows wrong effort after /effort max

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗