🏖️ トイレにもスタバにも行ける AI 開発
長時間タスクを走らせている間、席を離れられない問題は AI コーディングツールの宿命でした。承認プロンプトが 1 回でも出ると、その場で y を押さない限り数十秒で止まってしまう。
Claude Code v2.1.51 で追加された Remote Control 機能は、この「席に縛られる時間」を解放します。ローカルで動いている Claude Code セッションを、claude.ai/code(Web)や iPhone / Android のモバイルアプリから操作・監視できるようになりました。トイレ、お茶、外出、スターバックスでの続き作業 — すべてスマホ 1 台で完結します。
🧠 Remote Control が解決する「席拘束」問題
| 従来 | Remote Control |
|---|---|
| 長時間タスク中に席を離れると AI が止まる | スマホから状況確認・承認できる |
| 承認プロンプトで作業がブロック | どこからでも承認可能 |
| 外出時は AI と切断 | 外出先でも続きを指示できる |
| 進捗確認のためだけに PC 前に戻る | Web / アプリで進捗が見える |
「ローカルで実行し続けて、指示と承認だけをリモート化する」という設計思想が秀逸です。
🗺️ 接続アーキテクチャ全体像

図のポイントは 3 つのゾーンに分かれていること:
- 外出先:スマホ / Web / デスクトップアプリから claude.ai アカウントでログイン
- Anthropic Cloud:セッションブローカーとして制御だけを中継(コードは保存しない)
- 自宅・会社:DevContainer 内で
claude --dangerously-skip-permissionsが稼働し、outbound HTTPSのみでクラウドと通信
ローカルリポジトリとの読み書きは DevContainer 境界の内側で完結 し、ネットワーク越しにコードが流れることはありません。
🔐 ローカルファーストのセキュリティモデル
Remote Control の最大の特徴は データがクラウドに上がらない こと。
- Claude Code プロセスは ローカルで動き続ける
- リポジトリのコードやファイルはローカルに留まる
- 通信は outbound HTTPS のみ(インバウンドポート不要)
- 認証は TLS + 短命な認証情報で保護
- セッション 10 分以上通信断で自動切断
ファイアウォールの追加設定や公開 IP も不要。社内ネットワークからそのまま使えます。
📋 前提条件
| 項目 | 条件 |
|---|---|
| Claude Code バージョン | v2.1.51 以降(VS Code 統合は v2.1.79 以降) |
| プラン | Claude Max / Pro / Team / Enterprise |
| 認証 | /login で claude.ai アカウント連携(API キー不可) |
| Team / Enterprise | 管理者が admin-settings で Remote Control を有効化 |
🚀 起動手順:設定を 1 回トグルするだけ
毎セッション /remote-control を叩く必要はありません。Claude Code の設定に Enable Remote Control for all sessions というトグルがあり、これを true にするだけで 以降のすべての claude 起動で自動的に Remote Control が有効になります。
> /config
Show last response in external editor false
Show PR status footer true
Model Default (recommended)
Auto-connect to IDE (external terminal) false
Claude in Chrome enabled by default true
Teammate mode tmux
Default teammate model claude-opus-4-7
▸ Enable Remote Control for all sessions true ← ここを true に
設定後のワークフロー:
# いつも通り起動するだけで Remote Control が有効
claude --dangerously-skip-permissions
# セッション識別のために rename
/rename CTS-EC
これだけで https://claude.ai/code/session_XXXX からアクセス可能になります。
DevContainer との組み合わせ
Agent Teams 編で解説した DevContainer 運用と組み合わせると強力です。
# PowerShell から DevContainer に入って起動
docker exec -it -u vscode cts-ec_devcontainer-devcontainer-1 bash
export LANG=ja_JP.UTF-8
tmux new -s claude
claude --dangerously-skip-permissions
# 設定が true なら Remote Control は自動有効
/rename CTS-EC
bypass permissions + Remote Control の組み合わせ により、スマホから承認プロンプトの応答すら不要になります。ただし DevContainer 内での利用が前提です(bypassPermissions の安全運用を参照)。
💎 bypass permissions + Remote Control は「無限承認ボタンクリック」からの解放
この組み合わせの真価は、ステアリング駆動開発の L 規模タスクを動かすとき に実感できます。
| フェーズ | 確認プロンプトが発生する場面 |
|---|---|
| Phase 0(参照実装レビュー) | 複数ファイルの Read |
| Phase 1〜N(実装) | Edit / Write / Bash(テスト実行・ビルド) |
| Phase 完了時 | /test + /check-test-quality + implementation-validator |
| 最終 | /pre-push(code-reviewer + validator 並列起動) |
L 規模ステアリング 1 本で 1 時間以上 かかることも珍しくありません。この間、従来は確認プロンプトが出るたびに PC 前に戻って y を連打し続ける必要がありました。
bypass permissions + Remote Control が解決するのは、まさにこの「無限承認ボタンクリック地獄」です。
- ✅ 承認プロンプトは bypass permissions が自動で応答 → クリック不要
- ✅ 進捗確認だけスマホから軽くチェック
- ✅ 異常があった時だけ Web / モバイルから介入
- ✅ 席を離れている時間を全部「待ち時間」ではなく「生産的な時間」に転換
「トイレに行ける・お茶が淹れられる・ご飯が食べられる・スタバで別作業ができる」 — この解放感は、一度体験すると戻れません。AI コーディングの運用品質が段違いに上がります。
安全性との両立
自由度が高い分、安全性の前提条件は厳守します。
- DevContainer の中でのみ bypass permissions を有効化(ホスト OS 直下は絶対 NG)
.claude/settings.jsonのdenyリスト(rm -rf /*/git push --force*等)は DevContainer 内でも残す- git の保護ブランチ・保護タグを必ず設定(
mainへの force push は絶対に防ぐ) - 作業完了後は
/exitでセッションを明示終了
🏷️ /rename でセッションに名前を付ける(唯一の手動操作)
Enable Remote Control for all sessions を true にしたあと、明示的に操作が必要なのは /rename だけです。複数プロジェクトを同時に走らせるとき、セッション名で識別できないと Web / モバイルで迷子になります。
/rename CTS-EC
Session renamed to: CTS-EC
Web / モバイル側では、このセッション名がそのままリストに表示されます。命名ルール例:
| シーン | 命名例 |
|---|---|
| プロジェクト単位 | CTS-EC / kb-site |
| プロジェクト + 作業 | CTS-EC-yahoo-oauth / kb-article-series |
| 日付付き | CTS-EC-20260420 |
デフォルト名のままだとセッション一覧が session_01XXXX の羅列になるため、起動直後に /rename するのを習慣化すると快適です。
📱 リモート側からの接続
Web(claude.ai/code)
- 任意のブラウザで
https://claude.ai/codeを開く - 左サイドバーの「Code」セクションに、アクティブな Remote Control セッション(例:
CTS-EC)が並ぶ - セッションをクリックしてチャット再開
- ローカルと同じようにプロンプトを投げる・承認する
CLI 側に表示される https://claude.ai/code/session_XXXX を直接開いてもピンポイントで接続できます。
モバイルアプリ(iOS / Android)
Claude 公式アプリの「Code」タブから、同じアカウントでログインしていればアクティブなセッションが見えます。スマホから承認操作・追加プロンプトが可能で、外出中の作業監視に最適です。
Windows / macOS デスクトップアプリ
Claude デスクトップアプリの Code 画面経由でも、同じ claude.ai/code の UI が利用できます(公式ドキュメントには明記されていませんが、Web 実装を内包しています)。
🎛️ bypass permissions を切り替える Shift + Tab
CLI 側で shift+tab を押すと、権限モードをトグルできます。
▸▸ bypass permissions on (shift+tab to cycle)
モードは以下を循環します。
| モード | 挙動 |
|---|---|
| 通常 | 編集・Bash 実行時に確認プロンプト |
| acceptEdits | ファイル編集のみ自動承認 |
| bypass permissions | 全確認をスキップ |
| plan | 計画のみ、実行しない |
Remote Control 運用時は DevContainer 内で bypass permissions を使うのが実用的 です。Web / モバイルに承認プロンプトが大量に飛んでくるのを避けられます。
🚦 リモート操作と確認プロンプトの関係
| 操作種別 | リモートから可能か |
|---|---|
| プロンプト送信 | ✅ |
| ファイル編集の承認 | ✅ |
| Bash コマンド実行の承認 | ✅ |
/mcp・/plugin 等のインタラクティブピッカー | ❌(ローカルのみ) |
| ログアウト・権限モードの切替 | CLI 側で実行 |
local-only なコマンドは従来どおり CLI 側に戻って操作します。
⚠️ 制限事項
- セッション 10 分以上通信断で自動切断 — 長時間の移動中は復帰必要
- ローカルプロセス停止 = Remote Control 終了 — マシンがスリープすると切れる
- Ultraplan 開始時に自動切断 — プラン変更操作で再ログインが走る場合あり
- インタラクティブピッカー(/mcp, /plugin)はローカルのみ
- ファイルロック無し — 同じファイルを Web 側と CLI 側で同時編集するとコンフリクト
🗺️ ユースケース
1. 外出中の承認ポーリング
長時間テストや大規模リファクタを回している間、スマホに承認だけ流せば、待機時間ゼロで実行が継続します。スタバで記事を書きながらバックグラウンドで CI 前チェックを回す、といった運用が現実的になります。
2. 複数デバイス間の作業継続
朝は PC でステアリング作成 → 昼はスマホで進捗確認 → 夕方は別 PC の Web ブラウザで続き、という 「プロセスはローカル、操作は複数デバイス」 の使い方ができます。
3. ステアリング駆動開発との統合
ステアリング駆動開発の L 規模タスク(8 ファイル、1〜2 時間)では、実装 Phase ごとにスマホから進捗確認できるため、席拘束時間が大幅に減ります。/steering-status の結果もリモートで見えます。
🧷 運用上のベストプラクティス
- セッション名は
/renameで プロジェクト + 作業内容 にする bypass permissionsは 必ず DevContainer 内 で使う(Agent Teams 編 参照)- 外出時はモバイルアプリのプッシュ通知を ON に(承認要求がスムーズ)
- 長時間離席するなら、ローカル PC がスリープしない設定にする
- 作業が終わったらセッションを明示的に終了(
/exit)
🚫 やってはいけないこと
- ホスト OS 直下で
--dangerously-skip-permissions+ Remote Control を同時有効化する(侵入経路を与える) - 複数人で同じセッションに接続して同時編集(ファイルロックなし)
- セッション URL を公開チャットに貼る(短命でも接続可能性を与える)
- ローカル PC のネットワーク切断を放置(10 分で自動切断)
/mcp//plugin等のピッカーをモバイルから開こうとする(ローカルでのみ動作)
📚 シリーズ記事
| # | タイトル | 内容 |
|---|---|---|
| 1 | 概要 | ステアリング駆動開発の全体像 |
| 2 | 壁打ち・規模判定編 | 壁打ちの進め方、ADR の書き方、規模判定の基準 |
| 3 | ステアリング作成編 | M/L 規模のドキュメント作成、TDD タスク分解 |
| 4 | 実装・完了編 | TodoWrite 連携、進捗管理、アーカイブ運用 |
| 5 | コンテキスト設計編 | AI に渡すコンテキストの最適化、skills 設計 |
| 6 | 品質ゲート編 | doc-reviewer、テスト品質チェック、受入テスト |
| 7 | Claude Code ベストプラクティス | CLAUDE.md 設計、hooks、commands、rules、skills |
| 8 | Agent Teams 編 | agents 定義、チーム構成、マルチエージェント協調 |
| 9 | Remote Control 編(本記事) | スマホ・Web から CLI セッションを操る席拘束からの解放 |
🔗 関連記事
- Agent Teams 編 — DevContainer + bypass permissions の安全運用
- Claude Code ベストプラクティス —
.claude/の全体構成と hooks 運用 - ステアリング駆動開発とは:概要 — 長時間タスクを管理するためのフレームワーク
- Claude Code 7層ハーネスエンジニアリング — Remote Control が載る運用基盤
📖 関連用語
- tmux — Remote Control と組み合わせるとセッション永続化が強力になる
- ハーネスエンジニアリング — Remote Control を含む運用基盤の設計
- コンテキストエンジニアリング — 複数デバイスをまたいでも壊れないコンテキスト運用