シリーズ:スマホからClaude Codeを操る最強環境構築(全2回・前編)
はじめに:外出先でもAIエージェントに仕事を任せたい
Claude Codeは、ターミナル上で動く対話型のAIコーディングエージェントだ。指示を出せば、ファイルの作成・編集からgit操作、テストの実行まで、開発作業を丸ごと任せられる。まさに「優秀な同僚」がターミナルの中にいるような体験だ。
ただし、一つ大きな制約がある。自宅のPCの前にいないと使えないということだ。
外出中にふと「あのバグ、Claudeに直してもらおう」と思い立っても、手元にあるのはスマホだけ。ブラウザ版のClaude(claude.ai)は使えるが、Claude Codeのようにファイルを直接操作するエージェント機能はない。結局「帰ったらやろう」と先送りにしてしまう。
この記事では、スマホからClaude Codeをフル活用する環境を構築するために、筆者が検討・試行錯誤したインフラ選定の思考プロセスをまとめる。後編では実際の構築手順を紹介するので、まずは「なぜこの方法がベストなのか」を一緒に考えてほしい。
Slack連携の罠とベストプラクティスの再考
最初に思いつく「Slack経由」は本当にベストか?
スマホからClaude Codeを使いたいと考えたとき、最初に頭に浮かぶのは「SlackやDiscordなどのチャットUIから操作できないか?」というアイデアだろう。実際、Claude CodeにはSlack連携の仕組みもあり、一見すると手軽に見える。
しかし、ここに大きな落とし穴がある。
Claude Codeは対話型のCLIツールだ。処理の途中で「このファイルを変更していいですか?」「このコマンドを実行しますか?」と確認を求めてくる。この「対話のキャッチボール」が、チャットUIとは根本的に相性が悪い。
具体的に何が問題かというと:
- 確認プロンプトの見逃し:Slackの通知に気づかず、Claude Codeが承認待ちで止まったまま放置されてしまう。
- 文脈の分断:Slackのメッセージは時系列に流れていくため、長い処理のログを追いかけるのが困難。
- UIのミスマッチ:ターミナルの出力(ファイルのdiff表示やエラーログなど)がチャット画面では非常に読みづらい。
つまり、Claude Codeの「ターミナルで動く」という特性を殺してしまうのだ。
「ターミナルごと持ち出す」という発想の転換
では、どうするか?答えはシンプルだ。
SlackにClaude Codeを繋ぐのではなく、自宅PCのターミナル画面そのものをスマホに持ってくればいい。
つまり、SSH(Secure Shell)で自宅PCにリモート接続し、ターミナルアプリ上でClaude Codeを直接操作する。こうすれば、自宅PCの前に座っているのとまったく同じ体験がスマホ上で得られる。
確認プロンプトが来ればその場で「y」と打てばいい。diffの表示もターミナルそのままだ。Slackという「通訳」を挟まないから、情報のロスがゼロになる。
環境構築の選択肢:VPSか?自宅PC(Tailscale)か?
「SSHでリモート接続する」と決まったら、次は接続先をどこにするかを考える必要がある。大きく2つの選択肢がある。
選択肢A:クラウドVPSを借りる
AWSやさくらVPS、ConoHaなどのクラウドサーバーを借りて、そこにClaude Codeをインストールする方法だ。
メリット:
- 自宅のPCを起動しておく必要がない
- グローバルIPアドレスがあるので、どこからでもすぐ接続できる
- 自宅の回線やルーターの設定に依存しない
デメリット:
- 月額コストがかかる(まともなスペックだと月数千円〜)
- 開発環境を一からセットアップし直す手間がある
- ストレージやスペックに制約がある
選択肢B:自宅PCにTailscaleで接続する
自宅で動いているPC(WSL環境など)に対して、Tailscaleというサービスを使って外出先からセキュアに接続する方法だ。
メリット:
- 追加コストがゼロ(Tailscaleは個人利用無料)
- 自宅の開発環境をそのまま使える(環境構築の二重管理が不要)
- 自宅のマシンスペックをフル活用できる
デメリット:
- 自宅のPCを起動したまま外出する必要がある
- 自宅の回線が落ちると接続できない
筆者の結論:自宅PC+Tailscale
筆者の場合、すでにWSL 2(Windows Subsystem for Linux)上にClaude Codeの開発環境を構築済みだった。Dev Containerの設定、gitの認証情報、各プロジェクトのセットアップ——これらをVPSに複製するのは大きな手間だ。
また、自宅PCのスペック(十分なメモリとSSD)をそのまま活かせるのは魅力的だし、VPSの月額コストも馬鹿にならない。
「すでに最強の開発環境が自宅にあるなら、それをそのまま外に持ち出せばいい」——これがTailscaleを選んだ理由だ。
Tailscaleは、WireGuardベースのメッシュVPNサービスで、自宅PCとスマホの間にセキュアなトンネルを作ってくれる。ルーターのポート開放やDDNSの設定といった面倒な作業は一切不要で、アプリをインストールしてログインするだけで使える手軽さも大きなポイントだ。
落とし穴:VPNアプリの競合問題(ProtonVPN vs Tailscale)
Tailscaleの導入を決めたところで、一つ厄介な問題にぶつかった。AndroidのVPN競合問題だ。
Androidでは、OSの仕様としてVPN接続は同時に1つしか有効にできない。これは、セキュリティ上の理由からOS側で厳格に制御されているためだ。
筆者は普段、プライバシー保護のためにProtonVPNを常時ONにしている。しかし、TailscaleもまたVPNの仕組み(VPNプロファイル)を使って動作する。つまり、TailscaleをONにするとProtonVPNが切れ、ProtonVPNをONにするとTailscaleが切れるという、排他的な関係になってしまう。
解決策:運用ルールで割り切る
技術的にこの制約を回避する方法は基本的にない(root化などの特殊な手段を除けば)。そこで、以下のような運用ルールを設けることにした。
- 普段はProtonVPNをONにして、プライバシーを守る。
- Claude Codeを操作するときだけTailscaleに切り替える。SSH接続中はデータが暗号化されるため、VPNがなくてもセキュリティリスクは低い。
- 作業が終わったらProtonVPNに戻す。
切り替え自体は数タップで済むので、実運用ではそこまでストレスにならない。ただし、「VPNの切り替えを忘れて接続できない!」というのはありがちなミスなので、この仕様は事前に知っておくべきポイントだ。
気になるスマホの「通信量」問題
外出先でのリモート作業と聞くと、「通信量(ギガ)を大量に消費するのでは?」と心配になるかもしれない。結論から言うと、SSH接続の通信量は驚くほど少ない。
なぜSSHは通信量が少ないのか
SSH接続でやり取りされるのは、基本的にテキストデータだけだ。キーボードで打った文字と、ターミナルに表示される文字——それだけがスマホとPC間を行き来する。
Claude Codeが裏で行っているファイルの読み書き、npmパッケージのダウンロード、gitの操作——これらの「重い処理」はすべて自宅PCのローカルで実行される。自宅の光回線を使ってパッケージをダウンロードし、自宅のCPUでコードを実行する。スマホの回線はあくまで「リモコンの電波」のような役割しか果たさない。
具体的にどのくらいの通信量か
一般的なSSHのターミナル操作であれば、1時間あたり数MB程度で済む。これは、YouTubeの動画を数秒再生するのと同程度のデータ量だ。
テザリングや格安SIMの少ないデータ容量でも、まったく問題なく使える。むしろ、VPS上でブラウザベースの開発環境(VS Code Serverなど)を使うよりも圧倒的に通信量が少ない。
自宅回線が「肩代わり」してくれる構図
この構図を整理すると、こうなる:
| 処理 | 使われる回線 |
|---|---|
| キーボード入力 → PC | スマホの回線(数バイト) |
| ターミナル表示 ← PC | スマホの回線(テキストのみ) |
| npm install, git clone | 自宅の光回線 |
| ファイルの読み書き | 自宅PCのローカルディスク |
| AIモデルへのAPI通信 | 自宅の光回線 |
つまり、通信量が多い処理はすべて自宅の光回線が担当し、スマホの回線は「指示」と「結果の表示」だけを担当する。この圧倒的な効率の良さが、SSHベースのリモート開発の大きなメリットだ。
まとめ
本記事では、スマホからClaude Codeを操作するために、以下のインフラ設計上の意思決定を行った。
| 判断ポイント | 結論 | 理由 |
|---|---|---|
| 操作方法 | SSH+ターミナル | 対話型CLIツールの特性を活かすため |
| 接続先 | 自宅PC(WSL 2) | 既存環境の流用、コスト削減 |
| VPN/トンネル | Tailscale | 無料、設定簡単、ポート開放不要 |
| VPN競合 | 運用ルールで切り替え | Android OS仕様のため技術的回避は困難 |
| 通信量 | ほぼゼロに近い | SSHはテキストのみ、重い処理は自宅回線 |
この設計思想をベースに、後編ではいよいよ実際の環境構築に入る。
スマホに「ターミナル」と「トンネル」と「セッション管理」を揃えれば、外出先でも自宅と同じように複数のClaude Codeを同時に走らせることができる。後編では、この「3種の神器」——Tailscale・Termius・tmux——のセットアップと、スマホの小さな画面で快適に開発を回すUI最適化テクニックを徹底解説する。
次回: [後編] スマホが最強のAI開発機に!Tailscale + tmuxで作るClaude Codeのモバイル多重起動