`claude remote-control` (server mode) fails registration with 401 `Missing Authorization header` while `claude --remote-control` (interactive) works — same account, same machine
Status Open
Reported on v2.1.222
Maintainer reply None cached
Activity 0 comments · opened Aug 4, 2026
Environment
- Claude Code: 2.1.222 (native install; also reproduced on 2.1.221)
- OS: WSL2 Ubuntu 26.04 LTS, kernel 6.18.33.2-microsoft-standard-WSL2, x86_64
- Auth: claude.ai OAuth (Max 20x),
authMethod: claude.ai,apiProvider: firstParty - No
ANTHROPIC_API_KEY, noANTHROPIC_BASE_URL, no proxy env vars, no managed-settings file, none of the telemetry-disabling env vars set
Bug
claude remote-control (server mode) always fails at bridge registration:
Error: Registration: Authentication failed (401): Missing Authorization header.
Please provide an OAuth token as a Bearer token.. Remote Control is only available
with claude.ai subscriptions. Please use `/login` to sign in with your claude.ai account.
Meanwhile claude --remote-control (interactive mode) works perfectly with the same credentials, on the same machine, minutes apart — session registered, steerable from claude.ai/code on two devices, stable for 35+ minutes with no disconnects.
Debug log (--debug-file, redacted)
[bridge:init] bridgeId=082aedaf-... dir=<project> branch=master gitRepoUrl=<private repo> machine=<host>
[bridge:init] apiBaseUrl=https://api.anthropic.com sessionIngressUrl=https://api.anthropic.com
[bridge:init] sandbox=false
[bridge:api] POST /v1/environments/bridge bridgeId=082aedaf-...
[bridge:api] Registration: 401 received, attempting token refresh
[bridge:api] Registration: Token refreshed, retrying request
[bridge:api] Registration: Retry after refresh also got 401
The client refreshes the token successfully and the retry is still rejected with "Missing Authorization header".
Ruled out
- Eligibility:
claude remote-control --helpprints the full flag list (docs say eligibility is checked before help prints), andclaude doctorshows Remote Control available with no issues - Token validity: full OAuth login with scopes
user:file_upload, user:inference, user:mcp_servers, user:profile, user:sessions:claude_code; not asetup-token; refresh succeeds mid-request - Proxy/gateway: no proxy env vars;
apiBaseUrl=api.anthropic.com; direct connectivity to api.anthropic.com confirmed - Git context: reproduced identically both with no repo (
gitRepoUrl=null) and inside a trusted git repo with branch + remote populated - Fresh login: full
claude auth logout/claude auth logincycle, then immediate retry with the brand-new token — identical double-401
Repro
- WSL2 Ubuntu, fresh native install,
/loginwith a claude.ai Max account cdinto any trusted project directoryclaude remote-control→ 401 at registration; 100% reproducible (6 attempts across two versions and a fresh login cycle)claude --remote-controlin the same directory → works
Possibly related: #30102, #30096 — but those appear to be a different failure point (registration succeeds, session dies at Poll when a client connects). This one never registers.