Claude Media
Remote Controlに接続できないときの見分け方と対処

Remote Controlに接続できないときの見分け方と対処

Claude Code Remote Controlが繋がらないときのエラー文言を原因別に整理し、確認手順と対処法をまとめました。

Remote Controlが繋がらないとき、原因はサインイン・組織のポリシー・ネットワーク・セッションの状態のどれかにほぼ集約されます。Claude Codeはエラーごとに理由をメッセージへ埋め込むため、文言を読み違えなければ切り分けは早く終わります。本稿では接続状態の確認方法と、エラー文言別の原因・対処をまとめます。

このTipsでできること

Remote Controlの接続失敗を、フッターの表示・エラー文言・再接続の挙動から切り分けられるようになります。

接続状態はどこで確認できるか

対話セッションでは、接続中は入力欄の下に /rc active のインジケーターが表示されます。ターミナルの幅が狭いと非表示になりますが、機能自体は動いています。下矢印キーでインジケーターを選んでEnterを押すか、/remote-control をもう一度実行すると、セッションURLとQRコードを含むステータスパネルが開きます。パネルには切断ボタンもあり、選んでもローカルのセッション自体は止まりません。

接続が失敗すると、Claude Codeは理由付きの通知を出し、インジケーターは失敗状態のままフッターに残ります。理由をもう一度読みたいときも、下矢印キーでインジケーターを選びます。

「セッションが他所に奪われた」系は再接続の前に理由を読む

接続失敗の理由が「別の端末やアプリでセッションが引き継がれた」「自分で終了・アーカイブした」「サーバーがセッションを見つけられない」のいずれかを指しているとき、Claude Codeは通常の「/remote-control を実行してください」という案内をあえて出しません。理由ごとに次のように動きます。

  • 別の端末やClaude Codeセッションが引き継いだ: 取り戻したい場合だけ /remote-control を実行します
  • 自分で他の端末・アプリから終了かアーカイブした: 復活させたい場合だけ実行します。アーカイブ済みのセッションも開き直せます
  • サーバーがセッションを見つけられない: 他の端末やアプリから削除された可能性があります

理由を確認せずに再接続すると、意図せず他端末のセッションを奪い直すことになりかねません。

サインイン・組織設定に起因するエラーの見分け方

Remote Controlの可否判定は、サインインの種類・組織のプラン・管理者設定の3つを順に見ています。主な文言と原因、対処は次のとおりです。

エラー文言(先頭)主な原因対処
requires a claude.ai subscription主な原因ANTHROPIC_API_KEY 認証などclaude.aiにサインインしていない対処claude auth login でclaude.aiアカウントを選ぶ。APIキーが環境変数にあれば先にunsetする
requires a full-scope login token主な原因claude setup-token やAPIキー相当のトークンで起動した対処claude auth login でフルスコープのセッショントークンに切り替える
Unable to determine your organization主な原因キャッシュ済みのアカウント情報が古い対処claude auth login で再取得する
isn't enabled for this account主な原因プラン変更後にエンタイトルメントのキャッシュが古い対処claude auth logoutclaude auth loginclaude doctor で個別のチェック項目も確認できる
requires feature-flag evaluation主な原因DISABLE_TELEMETRY / DO_NOT_TRACK / CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC / DISABLE_GROWTHBOOK のいずれかが設定済み対処該当する変数をシェルかsettings.jsonenvブロックから外す
only available when using Claude via api.anthropic.com主な原因Amazon Bedrock・Google CloudのAgent Platform・Microsoft Foundry経由か、ANTHROPIC_BASE_URLが別ホストを指している対処メッセージが名指しする変数を外して再起動する
disabled by your organization's policy主な原因管理設定・別組織へのサインイン・ポリシー未読込のいずれか対処下の段落で切り分け方を説明します

「disabled by your organization's policy」だけは原因が4通りに分かれるため、順番に確認します。メッセージにdisableRemoteControlが含まれるなら、IT管理者が管理設定でこの端末のRemote Controlを個別に無効化しています。Team・EnterpriseのOwnerが有効化していない場合は既定でオフなので、claude.ai/admin-settings/claude-codeでOwnerがトグルを入れる必要があります。

Pro・Maxのはずなのにこのエラーが出る場合は、以前サインインしたTeam・Enterprise組織のポリシーを見ています。/statusでサインイン中のプランと組織を確認し、claude auth logoutしてから入り直します。それでも解決しないときはclaude doctorの「Organization policy」の行を見て、ポリシー自体が読み込めていないかを確認します。

「isn't available for your organization due to its compliance policy」は、データ保持や規制対応の設定がRemote Controlと両立しないケースです。管理画面のトグル自体がグレーアウトするため、Owner側でも変更できません。Anthropicサポートへの相談が唯一の経路です。

接続そのものが失敗する場合

「Remote credentials fetch failed」は、接続用の短命な認証情報をAnthropic APIから取得できなかったサインです。claude remote-control --verboseで詳細ログを見ます。

claude remote-control --verbose

よくある原因は3つあります。サインインしていない(APIキー認証はRemote Controlに対応しません)、ファイアウォールやプロキシがポート443のHTTPS通信を塞いでいる、あるいはセッション作成自体が先に失敗している、のいずれかです。ログに「Session creation failed」も出ていれば、サブスクリプションが有効かを確認します。古くなったログイントークンが原因になることはありません。Anthropic APIがトークンを拒否した場合、Claude Codeは自動でリフレッシュして再試行します。

「Remote Control got an unexpected server response」は、サーバーは応答したもののこのバージョンのClaude Codeが解釈できない形式だったケースです。同じバージョンで再試行しても直らないため、claude updateで更新してから/remote-controlを実行します。

resumeで再接続できないときに何が起きているか

claude --resumeclaude --continueで会話を再開すると、Claude Codeはその会話に記録されたRemote Controlセッションへ再接続を試みます。「Couldn't reconnect to your Remote Control session」は、ネットワークの瞬断やサーバーエラーなど一時的な理由で再接続に失敗し、リモートセッションが存在するかどうか確定できない状態です。/remote-controlで再試行するか、claude --remote-controlで新規セッションを作ります。ローカルのセッションはRemote Controlなしでそのまま動き続けます。

再開時にこのメッセージの代わりに起きることもあります。サーバーが「記録されたセッションは無い」と答えたとき、再接続の記録が自分のアカウントを指していれば、Claude Codeは自動生成名の代替セッションを作り、それまでのメッセージは新セッションに引き継がれません。記録が別アカウントを指していれば、メッセージ引き継ぎなしで新規セッションが始まります。記録自体が読めないときは「Previous session is unavailable」というメッセージに切り替わり、何も自動で始めません。/remote-controlを実行すれば現在のログインで新しいセッションを作れます。

Trusted Devicesが絡むエラーは端末登録の問題

「Your organization requires Trusted Devices for Remote Control, but this device is not enrolled」と「session expired for trusted-device check」の2つは、組織がTrusted Devicesを有効化している場合に限って出ます。前者はこの端末がまだ登録されていない状態、後者はサインインから18時間以上経過した状態です。どちらも/loginをClaude Codeで実行すれば解決します。組織側の有効化手順はClaude Code Trusted Devicesで組織のRemote Controlを制限する、Remote Control固有の条件はRemote Control Trusted Devicesとはにまとめています。

セッションURLをその都度探さなくていい仕組み

Remote Control接続中、Claude Codeは切り替えるタイミングが来ると入力欄の上にセッションURLを自動で出します。/remote-controlを打ち直して探す手間を省くための仕組みです。表示のタイミングは2つあります。

  • ターンが長引いたとき: サーバー側で調整された閾値を超えると「Still working」通知とともに「Check in from your phone」リンクが出ます。ターンが終わると消えます
  • 権限確認が繰り返されたとき: 権限プロンプトに何度か答えると「Approve tool calls from your phone」というリンク付き通知が出ます。次のターンが始まると消えます

この通知は、/configで常時接続をオンにしているセッションでも出ます。ただし毎回出るわけではなく、1セッションを通じて出現回数も数回に留まります。オン・オフの設定項目はなく、条件を満たさなくなると自動で消えます。

Remote Controlのエラーは3つの層に分けて読む

ここまでのエラーは、実は3つの層のどこで止まっているかで整理できます。サインインと組織ポリシーの層(claude.aiへの認証・プラン・管理設定)、経路の層(API接続先やネットワークの到達性)、セッション状態の層(誰がそのセッションを持っているか)です。同じ「繋がらない」でも、層が違えば直すべき場所が違います。認証エラーを経路の問題だと思い込んでANTHROPIC_BASE_URLを疑い続ける、逆に経路の問題を認証エラーだと誤認してサインインし直し続ける、といった遠回りはこの3層を意識するだけで避けられます。claude doctorは3層すべてを横断してチェックする数少ないコマンドなので、文言だけで判断が付かないときはまず実行する価値があります。

よくある質問

--verboseは普段から付けておくべきですか

不要です。詳細ログは通常のエラーメッセージより情報量が多いぶん読みにくくもなります。理由付きのメッセージで解決しない場合だけ付ける使い方が向いています。

エラーメッセージが英語のままなのはなぜですか

Remote Controlのエラー文言はClaude Code本体の出力で、日本語化はされていません。原因の特定には文言中の変数名やエラーコードがそのまま手がかりになるため、翻訳せず原文で確認するのが安全です。

まとめ

Remote Controlが繋がらないときは、まずフッターのインジケーターかステータスパネルで状態を確認します。エラーメッセージは原因を名指ししていることが多く、サインインの種類・組織のポリシー・API接続先・セッションの所有権のどこで止まっているかを読み分ければ、対処はほぼ一意に決まります。「セッションが他所で使われている」系の理由は、再接続する前に必ず読みます。Trusted Devicesが絡む2つのエラーは、組織側で端末登録が有効になっている場合にだけ出ます。組織側の設定条件はClaude Code Trusted Devicesで組織のRemote Controlを制限するにあります。

Remote Controlの基本的な起動方法や利用条件はClaude Code Remote Controlで作業を別デバイスに引き継ぐ、Amazon BedrockやカスタムAPIエンドポイントに起因するエラーの詳細はRemote Controlが使えない「requires the Anthropic API」の意味、ワークスペース信頼が原因の起動失敗はWorkspace not trustedエラーにまとめています。

この記事を共有:XはてブLinkedIn