[BUG] [1M] Opus 4.6 1M context unavailable on Max 5x — works on another machine with same account
Status Closed — not planned
Reported on v2.1.76
Maintainer reply None cached
Workaround ✓ Mentioned in thread ↓
Activity 12 comments · opened Mar 16, 2026 · closed Apr 15, 2026
Bug Description
Claude Code v2.1.76 on WSL2 shows 200k context window for Opus 4.6 instead of 1M, despite being on the Max 5x plan. Running /model opus[1m] returns a message saying the plan does not support the feature.
The same account on a different Windows machine has 1M context working correctly.
Steps to Reproduce
- Install Claude Code v2.1.76 via
npm install -g @anthropic-ai/claude-code - Sign in with a Max 5x account
- Run
/context— shows200kmax, not1M - Run
/model opus[1m]— returns plan not supported error
Expected Behavior
Per the 1M Context GA announcement and model configuration docs, Max plan users should automatically get 1M context for Opus 4.6 with no additional configuration.
Actual Behavior
/contextshowsclaude-opus-4-6 · Xk / 200k tokens/model opus[1m]returns a "plan does not support" error- Credentials show
rateLimitTier: "default_claude_max_5x"— re-authenticating produces the same result
Troubleshooting Already Attempted
- Signed out and back in multiple times
- Deleted
~/.claude/.credentials.jsonand re-authenticated (fresh token, same result) - Fully uninstalled standalone installer, reinstalled via npm
- System clock is correct
Additional Context
- The same Max 5x account works correctly with 1M context on a different Windows machine (not WSL2)
/btwslash command is also unavailable on this machine (returns "Unknown skill")- Both machines are Windows — the working one runs Claude Code natively, the failing one runs it inside WSL2 (Ubuntu 24.04)
- This appears to be a server-side entitlement/feature-gating issue specific to the WSL2 client
Environment
- Claude Code: 2.1.76
- OS: Ubuntu 24.04.2 LTS on WSL2 (kernel 6.6.87.2-microsoft-standard-WSL2)
- Node: v20.19.3
- npm: 10.8.2
- Install method: npm global
- Plan: Max 5x ($100/mo)
Related Issues
- #26428 — Sonnet 1M disappeared after update
- #26557 — sonnet[1m] not available on Max despite docs
- #24208 — Context display shows 200k instead of 1M
- #33159 — /btw tip shown but command returns "Unknown skill"
12 Comments
Found 3 possible duplicate issues:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
Not closing as duplicate — this issue adds the specific detail that the feature works on a different machine with the same Max 5x account, pointing to a client-side or platform-detection issue rather than a pure account entitlement problem. The WSL2 platform detail is unique to this report. See also #34795 for the closest match.
Same here
I'm on Windows 11, native binary, and statusline and context 1m is seen, yet every session collapses at 197k+ and says context limit reached.
Ok, I managed to find the root of the problem and fix it on my machine, perhaps it can be helpful for others who used the limit override.
Removing
CLAUDE_CODE_BLOCKING_LIMIT_OVERRIDEon WindowsIf you previously set
CLAUDE_CODE_BLOCKING_LIMIT_OVERRIDEand want to remove it (e.g., to use the full 1M context window on Opus 4.6), you need to clean it from all of these locations. Missing even one will keep the old limit active.Step 1: Remove from Windows Registry
Open PowerShell and run:
Step 2: Remove from VS Code/Cursor settings
File:
%APPDATA%\Code\User\settings.json, %APPDATA%\Cursor\User\settings.json`Remove or empty these two settings:
Step 3: Clear cached terminal state databases
Close VS Code and Cursor completely, then delete
state.vscdbfiles that cached the old env var. From Git Bash:These are SQLite databases where VS Code/Cursor persist terminal environments. They'll be recreated automatically on next launch — no real work is lost.
Step 4: Restart Windows (log out / log in)
A full Windows restart (or log out + log in) is required because running processes cache environment variables from when they were spawned. Restarting Explorer alone is not sufficient — VS Code and Cursor may have been launched from cached process trees that still carry the old value.
Verification
After restarting, open VS Code and run in the terminal:
Should print
NOT SET. The full 1M context window is now active for Opus 4.6.I run Claude Code on the same WSL2 kernel (6.6.87.2-microsoft-standard-WSL2) daily. A few diagnostic steps specific to the WSL2 + Windows dual-environment:
1. Check for leaked Windows env vars
WSL2 can inherit environment variables from the Windows side via
WSLENV. IfCLAUDE_CODE_BLOCKING_LIMIT_OVERRIDEwas ever set on the Windows host (as @i-dedova discovered), it may be leaking into WSL2:If any of these return a value, remove it on the Windows side and restart WSL2 (
wsl --shutdownfrom PowerShell, then relaunch).2. Platform identification mismatch
Claude Code on WSL2 reports
platform: linuxto Anthropic's servers (verified:node -e "console.log(process.platform)"→linux), while the native Windows install reportswin32. If 1M feature-gating has any platform-specific logic server-side, this could explain why the same account works natively but not under WSL2.You can check what platform string your client sends by looking at the debug logs after running
claude --debug:3. Credential file comparison
Compare the credential structure between the working Windows machine and WSL2:
Look for any differences in
rateLimitTier,planType, or feature flag fields. The WSL2 client might be authenticating with a different OAuth flow that returns a different entitlement set.4. npm install path isolation
Ensure the WSL2 npm global install is completely separate from the Windows one:
If it resolves to
/mnt/c/..., you're accidentally running the Windows binary through WSL2 interop, which can cause authentication confusion.Found a workaround via #34435:
Set the environment variable:
Or add it to
~/.claude/settings.json:<img width="677" height="366" alt="Image" src="https://github.com/user-attachments/assets/202178e9-3949-4421-85fc-4e3892ddf0e1" />
Both approaches work. The original question remains — shouldn't this be the default for Max subscribers?
Likely the same underlying issue as #35269 — since ~2026-03-16 22:00 UTC, Max plan OAuth tokens return
400 {"type":"invalid_request_error","message":"Error"}forclaude-opus-4-6andclaude-sonnet-4-6specifically. Claude Code silently falls back to Haiku. The 1M context unavailability may be a symptom of Opus being blocked entirely rather than a separate context window issue.I just wanted to say that I have the Max 20x plan and getting the same issue. On one windows machine showed up fine, on another will not show the 1 million context version.
After updating to the latest version 2.1.78, a 1MB context view is available.
Closing for now — inactive for too long. Please open a new issue if this is still relevant.
This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.