← バージョン管理 Windows⇔WSL 設定同期 →

title: スマホからのリモート操作 icon: 📱 slug: 24-mobile-remote card_desc: 公式Remote Controlの制約を実測し、Moshi+mosh+Tailscale+tmuxで外出先から自宅のClaude Codeを操作する環境を構築する手順

24 スマホからのリモート操作 — 外出先から自宅の Claude Code を触る構成

スマホから自宅 PC の Claude Code を安全に操作する環境を、公式機能の制約を実測して bypass した記録。モバイル回線に切り替えてもセッションClaude Codeの1回の対話単位。起動から終了までの会話と作業状態のこと。長く使うと内容が混ざるため、トピックの区切りで新セッションに引き継ぐ運用をするが死なない mosh 構成までの手順。


はじめに

「移動中や外出先から、自宅 PC の Claude Code に指示を出したい」——そう考えたとき、公式には Remote Control という機能があります。しかし プロキシ通信の中継役。「クライアント→プロキシ→本来の宛先」の順に通信を一度経由させる仕組みで、仲介者が経路の切替・集計・制限等を担当するや gateway 経由で Claude Code を動かしている環境では使えない という制約があり、実際に試すと:

/remote-control
→ Remote Control is not available for this deployment.

とはいえ諦める必要はありません。Tailscale + SSH + tmux の上に mosh を重ねるだけで、公式機能に近い体験を自前で構築できます。この章は、その実際の手順と「なぜそうなるか」を順に説明します。

全体構成

スマホ(Moshi アプリ)
   │  mosh(切れても自動再接続の UDP 通信)
   ▼
Tailscale 仮想ネットワーク(端末同士の専用通路)
   ▼
自宅 PC の WSL2(sshd :22)
   ▼
tmux セッション(ここに Claude Code が常駐)

ポイントは モデル通信(APIApplication Programming Interface(エーピーアイ)の略。あるプログラムの機能を、別のプログラムから呼び出せるようにした「窓口」 呼び出し)は自宅 PC 側の設定のまま という点です。スマホはあくまで「画面とキーボードの受け窓」なので、プロキシ環境でも deployment 制約を受けません。

手順 1: 土台の確認(Tailscale・SSH・tmux)

すでに Tailscale + SSH + tmux で自宅 PC に入れる人は、この手順は読み飛ばして構いません。

  1. PC とスマホ両方に Tailscale を導入して同じアカウントにログインする。PC 側の Tailscale IP(100.x.y.z 形式のプライベート IP)を控えておく
  2. WSL2 内で sshd を起動する(sudo apt install -y openssh-server → sudo service ssh start)
  3. tmux を導入(sudo apt install -y tmux)

手順 2: mosh の導入

mosh(Mobile Shell)は「一度切れても自動で繋ぎ直る」通信方式です。WiFi からモバイル回線への切り替えや、圏外からの復帰でもセッションが生き続けます。素の SSH は TCP 接続なので、一度切れるとやり直しです。

sudo apt install -y mosh
# 動作確認(一時的に起動して UDP ポートで待ち受けるか見る)
mosh-server new -v
# → MOSH CONNECT 60001 ... と出れば成功

手順 3: スマホアプリ(Moshi)の設定

モバイル側は Moshi(getmoshi.app・iOS/Android)を使います。AI コーディングエージェント与えられた目標に向かって、自分で手順を組み立てて作業を進めるAIプログラム。質問に答えるだけのチャットAIと違い、「調べる→書く→確認する」を自律的に行うの遠隔操作に特化した SSH/Mosh クライアントです。ホスト設定は以下のとおり:

項目 値
Address Tailscale で控えた PC の IP(100.x.y.z)
Port 22
Username WSL のユーザー名
認証「あなたは誰か」を確認すること。パスワードや鍵で本人であることを確かめる手続き WSL のパスワード
接続方式 Mosh
Mosh のパス /usr/bin/mosh-server(任意だが指定すると確実)
起動コマンドターミナルに入力してコンピュータに与える一行の指示。lsやcdのように『プログラム名+補足指定』で構成される tmux new -A -s claude

tmux new -A -s claude は「claude という名前のセッションがあればそこに接続、無ければ作る」の意味です。これを起動コマンドにしておけば、接続ボタンを押すだけでいつでも同じ作業部屋に戻れます。

なぜ mosh なのか(SSH との比較)

SSH mosh
ネットワーク切替時 切れて終わり 自動で繋ぎ直る
入力の反映 回線が遅いとカクつく ローカルエコーで打った瞬間に表示
セッションの寿命 接続と命運を共にする 接続と独立(tmux と併用で二重の保険)
必要なもの なし(標準) ホスト側に mosh-server

モバイル運用では「切れなさ」がすべてなので、mosh 一択です。ただし UDP が塞がれたネットワークでは繋がらない ことがあるため、同じアプリ内で接続方式を SSH に切り替えられる予備ホストを 1 つ作っておくと安心です。

運用の知見(実測で得た注意点)

⚠ PC のスリープには勝てません。mosh は「通信の切れ」に強いだけで、PC 自体がスリープすると WSL ごと停止します。外出先で繋がらないときの切り分けは、①スマホの Tailscale スイッチ ②PC がスリープしていないか、の順で。

⚠ 公式 Remote Control は認証方式に制約があります。API キー認証や gateway/プロキシ経由(ANTHROPIC_BASE_URL を api.anthropic.com 以外に向けている構成)では利用できません。エラーが出たら「機能が廃止された」ではなく「自分の認証モードが対象外」と疑うのが近道です。

💡 接続方式の選択肢。Moshi には SSH / Mosh / ET(Eternal Terminal・実験的)の選択肢があります。SSH は予備、ET はホスト側に別ソフトが必要なため、まずは Mosh + SSH 予備の 2 段構成で十分です。

まとめ