Claude Remote Control not working? Every error, fixed

Most Remote Control failures are not network problems. They are a login, an environment variable or an organization setting that Claude Code checks before it ever connects. Here is each message, what causes it, and the fix.

Claude Code Remote Control lets you continue a local session from claude.ai/code or the Claude app. When it fails, it usually fails before connecting, with a message that names the check that stopped it. Everything below comes from Anthropic's Remote Control documentation, the messages inside Claude Code 2.1.309 and Anthropic's public issue tracker, checked on 23 October 2026. If a message here does not match yours, update Claude Code first with claude update: several of them were reworded in 2026.

Remote Control has three ways in, and each has a short form:

Long formShort formWhat it starts
claude remote-controlclaude rcServer mode: a process that waits for sessions from claude.ai/code or the app
claude --remote-controlclaude --rcA normal interactive session with Remote Control on
/remote-control/rcTurns it on for the session you are already in (also in the Desktop app and VS Code)

The errors are the same whichever form you use, so "claude rc not working" and "Remote Control not working" have the same answers below.

Start with claude doctor

bash
claude doctor

It runs each eligibility check on its own and says which one failed: your account, an environment variable, the network, or your organization's policy. That one line usually tells you which section below to read.

Quick reference

MessageCauseFix
Remote Control requires a claude.ai subscriptionSigned out, or an API key is in useclaude auth login, remove the key
Remote Control requires a full-scope login tokenA claude setup-token tokenclaude auth login
Remote Control isn't enabled for this accountStale plan info after a plan changeclaude auth logout, then claude auth login
Remote Control is not yet enabled for your accountThe same checks, on a version older than 2.1.239claude update, then read the new message
Only available when using Claude via api.anthropic.comBedrock, a gateway or ANTHROPIC_BASE_URLUnset the variable it names
Requires feature-flag evaluationA variable that blocks feature flagsUnset the variable it names
Disabled by your organization's policyTeam or Enterprise toggle, or managed settingsAn Owner turns it on
Server rejected the request (HTTP 403)The server refused to create or reattach the sessionFresh session, or claude remote-control
Remote Control initialization failedDesktop app session could not start itRemove DISABLE_TELEMETRY, update the app
Remote credentials fetch failedNot signed in, or a proxy blocks port 443claude remote-control --verbose

"Remote Control requires a claude.ai subscription"

Remote Control works only with a claude.ai login on a Pro, Max, Team or Enterprise plan. API keys are not supported. The message has a few forms:

  • Signed out: Remote Control requires a claude.ai subscription.
  • Signed out, from claude remote-control: Error: You must be logged in to use Remote Control.
  • Signed in, but a key wins: Remote Control requires claude.ai subscription auth., followed by the credential in use, such as ANTHROPIC_API_KEY is set.

Run claude auth login and pick the claude.ai option. If the message names ANTHROPIC_API_KEY or ANTHROPIC_AUTH_TOKEN, remove it from your shell and from the env block of any Claude Code settings file. If it names apiKeyHelper, remove that setting. A key in a settings file is easy to miss, see Claude Code ignores your subscription login.

"Remote Control requires a full-scope login token"

You signed in with a long-lived token from claude setup-token or the CLAUDE_CODE_OAUTH_TOKEN variable. Those tokens can only make model requests, so they cannot open a Remote Control session. Run claude auth login for a full session token.

"Remote Control isn't enabled for this account"

The account check came back off. The usual cause is cached plan information that went stale after you changed plans. Run claude auth logout, then claude auth login, and update Claude Code if it is old. If you see "Unable to determine your organization for Remote Control eligibility", the fix is the same: claude auth login.

"Remote Control is not yet enabled for your account"

This is the older wording. Claude Code 2.1.309 no longer prints it, so seeing it means your Claude Code is out of date. Anthropic's documentation names two things it used to cover:

  • Before 2.1.239, it was the account check that now reads "Remote Control isn't enabled for this account". Cached plan information after a plan change is the usual cause.
  • Before 2.1.154, it also appeared when a variable that turns off feature flags was set, such as CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC or DISABLE_GROWTHBOOK.

Run claude update, then try claude rc again. The current version replaces this one vague line with a message that names the cause, and claude doctor shows which check failed. If it still refuses, run claude auth logout and claude auth login to refresh your plan information.

"Remote Control is only available when using Claude via api.anthropic.com"

Remote Control needs the session to talk to the Anthropic API directly. It does not work on Amazon Bedrock, Google Cloud's Agent Platform or Microsoft Foundry, or when ANTHROPIC_BASE_URL points at a gateway or proxy, even if you also signed in with claude.ai. The message names what routed the session away, such as CLAUDE_CODE_USE_BEDROCK. If you have an eligible claude.ai login, unset that variable, remove it from the env key in your settings, and restart the session.

"Remote Control requires feature-flag evaluation"

A variable that turns off feature flags is set, and the message names it.

  • CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC or DISABLE_GROWTHBOOK: unset it in your shell and in your settings file.
  • DISABLE_TELEMETRY or DO_NOT_TRACK: these block Remote Control only if your organization requires Trusted Devices. Versions 2.1.154 to 2.1.282 refused either one by mistake, so update to 2.1.283 or later first.

"Remote Control is disabled by your organization's policy. Contact your organization admin for access."

That full sentence, sometimes printed as Error: Remote Control is disabled by your organization's policy. when you start it from the command line, means a policy blocks Remote Control. Check these in order:

  1. The message mentions disableRemoteControl. It reads Remote Control is disabled by your organization's policy (managed setting disableRemoteControl). Your IT team turned it off on this machine through managed settings. Only they can turn it back on.
  2. You are on Pro or Max. Claude Code may still be signed in under a Team or Enterprise organization from an earlier login. Run /status to see which one, then claude auth logout and claude auth login.
  3. The message does not say to contact your admin. Your organization has the HIPAA configuration, which keeps Remote Control off. /status shows HIPAA on the Organization configuration line.
  4. It works for colleagues but not for you. On Enterprise with custom roles, you need both the cloud sessions permission and the Claude Code remote control permission. An Owner adds them under Organization settings, Roles.
  5. Otherwise, Remote Control is off by default on Team and Enterprise. An Owner turns on the Remote Control toggle in Claude Code admin settings at claude.ai.

If the message is "Couldn't verify your organization's policy for remote control", Claude Code started offline or before your VPN connected and could not load the policy. Reconnect and run /remote-control again.

If a connected session drops with "Remote Control was turned off by your organization's policy", the policy changed while you were connected. It does not reconnect by itself: once your organization allows it again, run /remote-control or claude rc. A running session picks up the changed policy about once an hour.

"Remote Control failed to connect: Remote Control server rejected the request (HTTP 403)"

This one usually comes with "run /remote-control to retry". The Desktop app and the VS Code extension show it with the "Remote Control failed to connect" prefix. In a terminal session the footer shows "Remote Control failed" followed by the same reason. Either way, Anthropic's server answered HTTP 403 when Claude Code asked it to create or reattach the Remote Control session. Retrying the same thing usually fails the same way.

What people reporting it on Anthropic's issue tracker (#91717, #95413) found:

  • Resumed sessions fail, fresh ones connect. A session started with claude --resume or claude -r tries to reattach to the Remote Control session it had before, and that reattach gets the 403. Start a new session with claude --rc instead of resuming.
  • Server mode works when the in-session path does not. In the same project folder, claude remote-control (or claude rc) connected for most reporters while /remote-control kept returning 403.
  • It often starts right after a Desktop app update. Update both the Desktop app and Claude Code; several reporters saw it clear on a later version or on its own, with nothing changed on their side.

Signing out and back in rarely fixed it for those reporters, but it costs a minute: claude auth logout, then claude auth login. If you are on a VPN or behind a proxy, also try without it: on a session that was already connected, Claude Code retries 403 refusals for up to three minutes and then names what refused, a network edge or a proxy, VPN or firewall on your side.

"Remote Control failed to connect: Remote Control initialization failed"

This is the Desktop app's generic message when its Code tab cannot turn Remote Control on for a session, from the toggle or from /remote-control. Unlike the terminal, it does not say why. The causes reported on Anthropic's issue tracker:

  • DISABLE_TELEMETRY or DO_NOT_TRACK is set (#100339), in the env block of ~/.claude/settings.json or as a user environment variable on Windows that every Desktop session inherits. The terminal reports this case by name; the Desktop app does not. Remove the variable, quit the app fully and start a new session.
  • A Desktop app bug in the build you have (#103301, #91325). Sessions started in the Desktop app fail while claude remote-control in a terminal works on the same machine and account. Reporters saw it fixed by a later app update.

Until it works, claude rc in a terminal in the same folder gives you a Remote Control session from the same machine and login.

"Remote credentials fetch failed"

Claude Code could not get a short-lived credential to connect. Run it again with details:

bash
claude remote-control --verbose

Either you are not signed in with claude.ai (run /login), or a firewall or proxy blocks outbound HTTPS to the Anthropic API on port 443. If you also see "Session creation failed", check that your subscription is active.

It connects, then the session goes offline

Remote Control is a local process. It goes offline whenever that process stops:

  • You closed the terminal, the desktop app or VS Code. The session stays offline until you bring it back. On a remote machine over SSH, start claude inside tmux or screen so it survives the disconnect.
  • The network was down for a while. An interactive session keeps retrying and reconnects by itself. In server mode (claude remote-control) it gives up after about 10 minutes and exits, so start it again.
  • "could not reach the Remote Control server for about 30 minutes". Run /remote-control to reconnect.
  • It dropped after a VPN or network change. Claude Code retries HTTP 403 refusals for up to three minutes, then disconnects and names what refused: a network edge, or a proxy, VPN or firewall on your side.
  • "Couldn't reconnect to your Remote Control session" after claude --resume. Run /remote-control to try again. Your local session keeps working meanwhile.
  • "Previous session is unavailable". Claude Code could not bring back the old Remote Control session and did not start a new one by itself. Run /remote-control to start a new one.
  • "Remote Control got an unexpected server response". Your Claude Code is too old for the server. Run claude update, then /remote-control.

Trusted Devices errors

If your organization requires Trusted Devices, an unenrolled machine gets "this device is not enrolled". Run /login: enrolling is part of signing in. "session expired for trusted-device check" means your sign-in is more than 18 hours old. Run /login again, or confirm with Face ID, Touch ID, Windows Hello or a passkey when claude.ai asks.

When Remote Control is the wrong tool

Remote Control is built to hand one live session to your phone, and it is good at that. Some of the failures above are not bugs but its design: it needs a claude.ai login, it covers only sessions you turned it on for, and it ends at Claude Code.

Termdeck works differently. A small agent on each of your machines dials out to termdeck.io and drives the Claude Code CLI with the login already on that machine, so it does not depend on Remote Control being enabled. Every session on every connected machine shows up, including ones started in a plain terminal, next to your Codex and Grok chats, and approvals reach your phone as push notifications. For a feature by feature look, see Claude Code Remote Control alternative.

Get started

One tab for every agent.

Run Claude Code, Codex, and Grok from the browser, approve tools from your phone, and review every diff.