ターミナルで作業を始め、その後スマートフォンや別のコンピューターのブラウザから指示を続けたいとします。Anthropicはそのための方法を2つ文書化しており、両者の本質的な違いは作業がどこで実行されるかです。Remote Controlは、claude.ai/codeまたはiOS・Android向けClaudeアプリを、自分のマシンで動いているClaude Codeセッションにつなぎます。コードの実行、ファイル、MCPサーバー(Claude Codeが接続するツール連携)、プロジェクト設定はすべてローカルに残ります。スマートフォンやブラウザはそのセッションをのぞく窓にすぎないため、コンピューターは起動したままにし、claudeプロセスも動かし続ける必要があります。一方、クラウドセッションはクラウドインフラ(デフォルトではAnthropicが管理)で動き、ノートPCを閉じた後も処理が続きます。ただし、これは別のセッションです。CLIからは既存のターミナルの会話をクラウドに送ることはできません。Anthropicの目安は、すでに進行中のローカル作業を続けるならRemote Controlを使う、というものです。ローカル環境がない、リポジトリをクローンしていない、複数のタスクを並行して走らせたい、といった場合はクラウドセッションを使います。
Remote Controlとクラウドセッション:セッションはどこで動くのか
どちらの機能も同じclaude.ai/codeのインターフェースを使うため、スマートフォン上では似て見えることがあります。ドキュメントによれば、決定的な違いはセッションが動く場所です。Remote Controlは自分のマシンで動くので、ローカルのMCPサーバー、ツール、プロジェクト設定をそのまま使えます。クラウドセッションは新しいクラウド環境で始まり、コードはGitHubから、またはアップロードされたリポジトリのバンドルから取得します。
どちらの機能も、CLIから既存のターミナルの会話をクラウドへ移すものではありません。Remote Controlでは、同じセッションが自分のマシンで動き続けます。claude --cloudは、プッシュ済みのブランチから新しい別のクラウドセッションを開始します。CLIでの引き継ぎは一方向のみで、claude --teleportでクラウドセッションをターミナルに取り込むことしかできません。ローカルセッションをクラウドへ送る方法として、クラウドセッションのドキュメントはClaude DesktopアプリのContinue inメニューを案内しています。
フラグ名は混同しがちです。クラウドセッションのドキュメントによると、--cloudはクラウドセッションを作成し、--remoteはその旧名で、現在は非推奨のエイリアスです。--remote-controlはまったく別の機能で、ローカルセッションの監視と操作を可能にします。
文書化された違い(AnthropicのRemote Controlおよびクラウドセッションのページより、2026年9月27日確認)
| | Remote Control | クラウドセッション |
| — | — | — |
| 実行場所 | 自分のマシン(CLI、Desktopアプリ、またはVS Code) | クラウドインフラ(デフォルトはAnthropic管理) |
| 動かし続ける必要があるもの | コンピューターとclaudeプロセス | ローカル側はなし。ノートPCを閉じても処理が続く |
| ターミナルからの開始 | claude remote-control、claude --remote-control、またはセッション内で/remote-control | claude --cloud "task"(新しいセッションを開始) |
| 対象プラン | Pro、Max、Team、Enterprise。APIキーは非対応 | Pro、Max、Team。premiumシートまたはChat + Claude Codeシートを持つEnterpriseユーザー |
| Team/Enterpriseの管理者手順 | Ownerがclaude.ai/admin-settings/claude-codeでRemote Controlトグルをオンにする | 組織のallow_remote_sessionsポリシーがオンである必要あり。Ownerがclaude.ai/admin-settings/claude-codeで有効化 |
| Zero Data Retentionの組織 | 有効化できない | クラウドセッション機能を使えない |
まずRemote Controlの要件を確認する
Anthropicが挙げている条件は以下のとおりです。一部の条件を満たしていない場合、Claude Codeは具体的なエラーメッセージを表示します。それらのメッセージと文書化された対処法は、末尾のトラブルシューティングにまとめています。
- claude.aiアカウントでサインインします。
claudeを実行し、/loginと入力します。claude setup-tokenやCLAUDE_CODE_OAUTH_TOKENによる長期トークンはモデルへのリクエストしかできないため、Remote Controlセッションを開けません。代わりにclaude auth loginを実行してください。 - Anthropic APIに直接接続します。Remote ControlはAmazon Bedrock、Google CloudのAgent Platform、Microsoft Foundryでは使えません。
ANTHROPIC_BASE_URLがゲートウェイやプロキシを指している場合や、エンタープライズ向けClaude apps gateway経由でサインインしている場合も動作しません。 - 環境変数を確認します。
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICまたはDISABLE_GROWTHBOOKを設定しているとRemote Controlは使えません。DISABLE_TELEMETRYまたはDO_NOT_TRACKだけを設定している場合はClaude Code v2.1.283以降が必要で、組織がTrusted Devicesを必須にしているならこれらの変数を解除する必要があります。 - ワークスペースの信頼を承認します。プロジェクトディレクトリで一度
claudeを実行し、信頼ダイアログを承認してください。ホームディレクトリに対する信頼は保存されないため、プロジェクトフォルダから始めます。 - ポート443でAnthropic APIへのアウトバウンド通信を許可します。企業のファイアウォールやプロキシの内側では特に重要です。
- TeamとEnterpriseでは、まずOwnerがclaude.ai/admin-settings/claude-codeでRemote Controlトグルをオンにする必要があります。医療データを扱うためのコンプライアンス構成であるHIPAA構成を持つ組織はブロックされます。その場合、
/statusのCompliance行にHIPAAと表示され、管理者トグルはグレーアウトします。ドキュメントはAnthropicサポートへの問い合わせを案内しています。
ステップ1:3つのCLIモードのいずれかでRemote Controlを開始する
インタラクティブモード(claude --remote-controlまたは--rc)は、リモートからも操作できる通常のターミナルセッションを開始します。どちらの側からでも入力できます。
すでに会話中なら、/remote-control(または/rc)でそのセッションを接続し、会話履歴を引き継げます。「この会話をスマホに移したい」という要望への最も直接的な答えです。
ターミナル以外では、VS Code拡張機能のプロンプト入力欄、またはDesktopアプリのCodeタブにあるローカルセッションで/remote-controlと入力します。VS Codeではフッターにインジケーターが表示され、セッションURLがチャットに投稿されますが、このコマンドは名前の引数を受け付けず、QRコードも表示しません。どちらのアプリでも、もう一度コマンドを実行すると接続が切れます。
サーバーモード(claude remote-control)は専用ホストとして動作します。初回実行時には何をするモードかを説明し、y/nで確認を求めます。拒否すると終了し、次回実行時に再び尋ねます。承認するとセッションURLを表示し、接続を待ちます。ローカルで入力することはできませんが、スペースキーを押すとスマートフォン用のQRコードが表示されます。
サーバーモードのフラグはremote-controlの後ろに付けてください。サブコマンドの前に置いたグローバルなclaudeフラグは、ラッパースクリプトが追加したものも含め、サーバーが作成するセッションに引き継がれません。--verboseや--modelのように、外してもセッションでできることが変わらない一部のフラグはClaude Codeが通します。それ以外のフラグ(たとえば--settings)をその位置に置くと起動を拒否し、エラーが取り除くべきフラグを示します。主なサーバーモードのフラグは次のとおりです。
--spawn same-dir(デフォルト):すべてのセッションが現在のディレクトリを共有するため、同じファイルを編集すると衝突する可能性があります。--spawn worktree:オンデマンドで作られる各セッションが、リポジトリの独立したチェックアウトであるgit worktreeをそれぞれ持ちます。--spawn session:ちょうど1つのセッションだけを提供し、それ以上の接続は拒否します。--capacity <N>:同時セッションの最大数で、デフォルトは32です。--name、--permission-mode、--sandbox/--no-sandbox:セッションのタイトル、開始時の権限モード、サンドボックスを設定します。
# サーバーモード:リモート接続を待機。スペースキーでQRコードを表示
claude remote-control
# ローカルでも入力できるインタラクティブセッション(名前は任意)
claude --remote-control "My Project"
# 実行中のセッション内で:現在の会話履歴を保持
/remote-control
ステップ2:スマートフォンやブラウザから接続する
接続方法は3つあります。任意のブラウザでセッションURLを開く、ClaudeアプリでQRコードを読み取る、claude.ai/codeまたはアプリのCodeタブで名前からセッションを探す、のいずれかです。オンラインのセッションには、緑のドット付きのコンピューターアイコンが表示されます。まだアプリを入れていなければ、/mobileで該当するアプリストアを開くQRコードが表示されます。
スマートフォンやブラウザからメッセージを送ったり、ファイルを添付したりできます。写真はClaudeが直接見ます。それ以外のファイルは自分のマシンにダウンロードされ、@ファイル参照としてClaudeに渡されます。サブエージェントやワークフローの進捗も同期され、スマートフォンからタスクを止めるとコンピューター上でも止まります。接続中はターミナルに/rc activeインジケーターが表示されます。もう一度/remote-controlを実行すると、URL、QRコード、そしてローカルセッションを動かしたまま接続だけを切るオプションを備えたパネルが開きます。
すべてのコマンドがリモートで使えるわけではありません。/pluginや/resumeのようなターミナル専用コマンドはローカルCLIでしか動きません。/compact、/clear、/context、/usageのようにテキストを出力するコマンドはスマートフォンからも使えます。通常はピッカーを開くコマンドは、代わりに引数を受け取ります。たとえば/model sonnetや/effort highのように入力します。
すべてのセッションを自動で接続させるには、/configで「Enable Remote Control for all sessions」をオンにするか、ユーザー設定でremoteControlAtStartupを指定します。リポジトリにコミットされた設定ファイルは、自動接続をオフにはできてもオンにはできません。
プッシュ通知を受け取るには、ターミナルと同じアカウント・組織でアプリにサインインし、通知を許可します。そのうえで/configの「Push when Claude decides」「Push when actions required」のどちらか、または両方をオンにします。
制限、再接続、データの扱い
サーバーモード以外では、Claude Codeの1インスタンスがサポートするリモートセッションは一度に1つです。ターミナルを閉じる、VS CodeやDesktopアプリを終了する、claudeを止める、といった操作をするとセッションはオフラインになります。リモートマシンでは、SSHが切断されてもセッションが残るようtmuxまたはscreenの中で起動することをドキュメントは推奨しています。
Ctrl+Cでサーバーモードを止めた後、同じディレクトリでclaude remote-control、claude remote-control --continue、claude remote-control --session-id <id>のいずれかを実行するとセッションを復帰できます。これが使えるのはおよそ4時間です。--remote-controlまたは/remote-controlで始めたセッションは、claude --continueまたはclaude --resumeで戻せます。
ネットワーク障害の扱いはモードによって異なります。接続済みのインタラクティブセッションは、VPNの切り替え後などに起こりうるHTTP 403の拒否に対して最大3分間再試行します。より長い障害では、インタラクティブモードはネットワークが戻るまで再試行を続けます。サーバーモードは約10分で諦めて終了します。
スマートフォンに転送された権限確認や質問は、回答するまで開いたままです。その他の転送されたダイアログはデフォルトで5分後に閉じ、dialogExpiry設定で変更できます。
セキュリティについて、ドキュメントによればローカルセッションはアウトバウンドのHTTPSリクエストしか行わず、インバウンドのポートは開きません。通信はTLSでAnthropic APIを経由し、それぞれ単一の用途に限定された短命の認証情報を使います。注意点が1つあります。接続中は、トランスクリプト(自分のメッセージ、Claudeの応答、ツールの動作)がData usageポリシーのもとでAnthropicのサーバーに保存されます。
disableRemoteControl設定を使えば、機能を完全にオフにできます。Anthropicが保持するデータを制限するZero Data Retentionのようなコンプライアンス要件を持つ組織は、Remote Controlを一切有効にできません。現在ベータ版でデフォルトはオフのTrusted Devicesは、2つのチェックを追加します。デバイスが登録済みであること、そしてサインインから18時間以内であることです。
変更履歴には、バージョンや日付なしで関連する追加項目が1つ記載されています。--remote-controlまたは/remote-controlで始めたセッションをClaudeアプリからフォークでき、フォークは自分のコンピューター上でバックグラウンドセッションとして動きます。
claude –cloudを使うべき場面と始め方
クラウドセッションは、claude.ai/code(Claude Code on the webとも呼ばれます)、モバイルアプリのCodeタブ、Desktopアプリ(LocalではなくCloudを選択)、またはターミナルのclaude --cloudから開始できます。GitHubからクローンするにはリポジトリへのアクセス権が必要で、Claude GitHub Appを使うか、ローカルのghトークンを送る/web-setupを使います。TeamおよびEnterpriseプランでは、OwnerがQuick web setupをオンにするまで/web-setupは表示されません。組織のallow_remote_sessionsポリシーもオンである必要があり、Ownerがclaude.ai/admin-settings/claude-codeで有効にします。
claude --cloudを呼び出すたびに新しいセッションが始まります。クローンされるのはローカルのチェックアウトではなく、現在のブランチにおけるGitHubのリモートなので、ドキュメントはローカルのコミットを先にプッシュするよう案内しています。現在のターミナルの会話は移動せず、ローカルに残ります。1回の呼び出しで扱えるリポジトリは1つで、呼び出しごとに独立したセッションができるため、これがタスクを並行実行する方法になります。
次の2つの場合、Claude Codeはクローンの代わりにリポジトリをバンドルとして自動アップロードします。リポジトリにgitリモートがまったくない場合と、Claude GitHub Appがインストールされていないgithub.comのリポジトリの場合です。GitLab、BitbucketなどGitHub以外のリモートは自動ではバンドルされません。CCR_FORCE_BUNDLE=1を設定する必要があり、そうして作ったセッションは結果をそのリモートにプッシュできません。
バンドルには、全ブランチの完全な履歴と、追跡対象ファイルの未コミットの変更が含まれます。未追跡のファイルは含まれないので、セッションに必要なファイルはgit addしておいてください。macOS、Linux、WSLでは、.envや*.pemなど認証情報らしきファイルの未コミットの変更も除外されます。リポジトリには少なくとも1つのコミットが必要で、バンドルは100MB未満でなければなりません。それより大きいリポジトリは、まず現在のブランチだけのバンドルに、次に作業ツリーを1つにまとめた(squash)スナップショットに切り替わり、そのスナップショットでも大きすぎる場合にのみアップロードが失敗します。
クラウドセッションをターミナルに取り込むにはclaude --teleportを使います。クリーンなgit状態、同じリポジトリのチェックアウト、リモートにプッシュ済みのセッションのブランチ、同じclaude.aiアカウントが必要です。テレポート後の新しい作業はローカルにとどまるので、引き続きスマートフォンから操作したい場合は/remote-controlを実行してください。
以下の文書化された制限を踏まえて計画しましょう。クラウドセッションは一定時間操作がないと停止し、VMは回収されます。再び開くと会話は復元されますが、実行中だったバックグラウンド処理は復元されません。クラウドセッションはほかのClaudeの利用とレート制限を共有し、AnthropicはVMに対する別途のコンピューティング料金はないとしています。組織でIP許可リストを使っている場合、Anthropicサポートが除外設定をするまで、Anthropicがホストするクラウドセッションはすべて認証エラーで失敗します。/clearはクラウドセッションでは使えないため、代わりにサイドバーから新しいセッションを始めてください。
git push # --cloudはローカルのチェックアウトではなくプッシュ済みのブランチをクローンする
claude --cloud "Fix the flaky test in auth.spec.ts"
# GitLab、BitbucketなどGitHub以外のリモート:バンドルのアップロードを強制
CCR_FORCE_BUNDLE=1 claude --cloud "Run the test suite and fix any failures"
# 実行中のクラウドセッションにフォローアップを送って終了
claude -p "your message" --cloud <session-id>
# クラウドセッションをこのターミナルに取り込む(ピッカーが開く)
claude --teleport
Remote Controlのエラーメッセージと文書化された対処法
これらのメッセージの多くは、問題の原因となっている変数や認証情報の名前を示します。Anthropicのトラブルシューティングガイドは、それぞれを次の対処法に対応付けています。
- “Requires a claude.ai subscription”:
claude auth loginを実行してclaude.aiを選びます。メッセージにANTHROPIC_API_KEY、ANTHROPIC_AUTH_TOKEN、apiKeyHelperが挙がっていれば、それを削除します。 - “Requires a full-scope login token”:setup-tokenでサインインしている状態です。
claude auth loginを実行してください。 - “Isn’t enabled for this account”:ログアウトして再度ログインし、Claude Codeを更新したうえで、
claude doctorを実行してどのチェックが失敗したかを確認します。 - “Requires feature-flag evaluation”:メッセージに原因の変数名が示されます。
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICまたはDISABLE_GROWTHBOOKなら解除します。DISABLE_TELEMETRYまたはDO_NOT_TRACKならv2.1.283以降に更新し、組織がTrusted Devicesを必須にしている場合は変数を解除します。 - “Only available when using Claude via api.anthropic.com”:メッセージに挙がっているプロバイダーの変数または
ANTHROPIC_BASE_URLを解除し、再起動します。 - “Disabled by your organization’s policy”:
disableRemoteControl、ProまたはMaxプランなのに以前のTeam・Enterpriseのログインが残っているケース(/statusで確認)、HIPAA構成、Ownerのトグルがオフになっていないかを確認します。 - “Remote credentials fetch failed”:
claude remote-control --verboseで再実行し、サインイン状態とポート443へのアクセスを確認します。
- プロジェクトフォルダで一度
claudeを実行し、信頼ダイアログを承認します。次に、APIキーやsetup-tokenではなくclaude.aiアカウントで/loginを実行します。TeamまたはEnterpriseの場合は、先にOwnerにRemote Controlのトグルをオンにしてもらってください。2. すでに会話中なら/remote-controlと入力してその会話を引き継ぎます。新しく始める場合、ローカルでも入力したいならclaude --remote-control、複数セッションを提供するホストにするならclaude remote-controlを使います。3. スマートフォンでQRコードを読み取るか、ClaudeアプリのCodeタブを開いて緑のドットが付いたセッションを選びます。4. マシンをスリープさせず、プロセスを動かし続けます。SSH経由ならtmuxまたはscreenの中で起動してください。5. ノートPCを閉じる必要がある場合や、作業がローカルツールに依存しない場合は、ブランチをプッシュしてclaude --cloud "task"を実行します。これはプッシュ済みのブランチから別のクラウドセッションを開始するもので、現在のターミナルの会話はローカルに残り、移動しません。