ClaudeCodeを
スマホ操作
Moshiとtmux入門手順
スマホからMoshiでMacに入り、ClaudeCodeやCodex CLIをそのまま動かすための環境構築をまとめました。
Tailscaleで安全な接続経路を作り、Moshiでスマホから入り、tmuxで作業セッションを守り、Mac側はcaffeinateでスリープを止めます。
スマホは操作端末。
ClaudeCodeはMacで動かす。
この記事で分かること
この記事では、スマホからMac上のClaudeCodeやCodex CLIを動かすための初期設定を、初心者向けに整理します。
なぜMac上のClaudeCodeを
スマホ操作するのか
スマホでAIを使うだけなら、ChatGPTアプリやClaudeアプリで十分です。ただし、ClaudeCodeやCodex CLIの本領は「PC内のファイルを読み、編集し、コマンドを実行し、テストして、差分を残す」ことです。
AIエージェント本体はMacBookで動かし、スマホはそのMacBookに接続する操作端末として使います。この構成なら、PC内のGit、Node.js、Python、画像素材、社内資料、環境変数、ビルドコマンドと連動できます。
- PC内の実ファイルをそのまま扱える
- ClaudeCodeやCodex CLIのログイン状態を使える
- スマホの通信が切れてもtmux内の作業を残せる
- 移動中に進捗確認、追加指示、承認だけできる
Tailscale、Moshi、tmux、caffeinateを組み合わせる
Mosh公式では、MoshはSSHの代わりに使えるモバイル向けリモートシェルで、Wi-FiやLTEなどネットワークを移動しても接続を維持しやすいと説明されています。ただし、Mac本体がスリープすると、そこで動いているClaudeCodeやCodex CLIも止まります。
スマホ
↓ Moshi
Tailscaleのプライベートネットワーク
↓ SSH / Mosh
MacBook
↓ tmux
ClaudeCode / Codex CLI
事前に準備するもの
- iPhoneまたはiPad
- MacBook
- Tailscaleアカウント
- Moshiアプリ
- Mac側の管理者権限
- Homebrew
- ClaudeCodeまたはCodex CLI
この記事は2026年5月19日時点の情報を元にしています。アプリの画面、料金、対応OS、ログイン方法は変わることがあります。インストール直前に公式ページも確認してください。
TailscaleでスマホとMacをつなぐ
Tailscaleは、スマホとMacを自分専用のプライベートネットワークに入れるためのツールです。外出先のスマホからMacへ入る場合、いきなりグローバルIPやポート開放でSSHを公開するのはおすすめしません。
whoami
hostname
Tailscaleアプリ上に表示されるMacの端末名、またはTailscale IPを控えます。接続先は ユーザー名@MacのTailscale名 または ユーザー名@MacのTailscale IP の形になります。
Mac側でSSH、Mosh、tmuxを準備する
Macの「システム設定 → 一般 → 共有 → リモートログイン」をオンにします。アクセスを許可するユーザーは、普段使っている自分のユーザーに絞るのが安全です。
brew --version
brew install mosh tmux
mosh --version
tmux -V
nosleepエイリアスを作る
MacBookがスリープすると、そこで動いているAIエージェントも止まります。移動中にClaudeCodeへ長い作業を任せるなら、Mac側でスリープを止める準備が必要です。
alias nosleep='caffeinate -dimsu'
alias nosleep-on='caffeinate -dimsu & echo $! > ~/.nosleep.pid && echo "nosleep on: $(cat ~/.nosleep.pid)"'
alias nosleep-off='kill $(cat ~/.nosleep.pid) && rm ~/.nosleep.pid && echo "nosleep off"'
source ~/.zshrc
長時間の nosleep はバッテリーを使います。基本は電源接続中のMac、または据え置きMacで使うのが安全です。
remoteエイリアスでtmuxセッションを守る
MoshiやMoshはモバイル回線に強いですが、接続が絶対に落ちないわけではありません。接続が落ちてもClaudeCodeの作業場所を残すためにtmuxを使います。
remote() {
local name="${1:-agent}"
tmux new-session -A -s "$name"
}
remote claude
remote codex
remote blog
remote claude でセッションがなければ作成され、すでにあればそこへ接続します。tmuxから抜けるときは Ctrl + b → d です。
MoshiからMacへ接続する
Moshiで新しい接続を作ります。HostにはMacのTailscale名またはTailscale IP、UserにはMacのユーザー名を入れます。最初はSSHで接続テストし、安定したらMosh接続に切り替えると切り分けしやすいです。
- Host: MacのTailscale名またはTailscale IP
- User: Macのユーザー名
- Authentication: SSHキーまたはパスワード
- Protocol: まずSSH、安定したらMosh
whoami
pwd
ClaudeCode / Codex CLIを起動する
MoshiからMacへ入れたら、作業フォルダへ移動してtmuxセッションに入ります。
cd ~/your-project
remote claude
claude
cd ~/your-project
remote codex
codex
スマホ操作用に安全条件を先に渡す
スマホからAIエージェントに投げる最初の依頼は、短すぎると迷子になりやすいです。最初だけ、目的、対象フォルダ、安全条件、確認方法をまとめて渡します。
あなたはこのMac上で動くAIコーディングエージェントです。
目的:
スマホからMoshi経由で作業しているので、短い確認を挟みながら安全に進めてください。
前提:
- 作業場所は現在のディレクトリです
- 既存ファイルを読む前に、まず構成を確認してください
- 秘密情報、APIキー、.envの中身は表示しないでください
- 破壊的なコマンドは実行前に必ず確認してください
- 大きな変更は小さく分けてください
最初にやってほしいこと:
1. 現在のディレクトリ構成を確認する
2. このプロジェクトが何をするものか要約する
3. 変更前に読むべきREADMEやAGENTS.mdがあれば列挙する
4. 次に送るべき指示文を3案出す
Typelessで音声入力を強くする
Moshiにも音声入力機能があります。ただ、長く話して、そのままAIへの指示文として整えたい場合は、TypelessのようなAI音声入力ツールを併用するとかなり楽です。
今からブログ記事を作りたい。
対象読者は初心者。
手順はTailscale、Moshi、tmux、nosleep、Typelessの順番。
専門用語は説明して。
最後にエラー対処とFAQも入れて。
コマンドはコピペできる形で出して。
短いコマンドはMoshi内で直接入力し、長い相談はTypelessで整えて貼る。この使い分けが実務では一番ラクです。
よくあるエラーと対処法
MoshiからMacに接続できない
Tailscale側でスマホとMacが同じアカウントにログインしているか、Macのリモートログインがオンか確認します。端末名で失敗する場合は、Tailscale IPで試してください。
SSHでは入れるがMoshで入れない
Mac側にMoshが入っているか確認します。MoshはUDP通信を使うため、環境によってはMoshだけ失敗することがあります。その場合はSSH + tmuxで運用しても大丈夫です。
tmuxに入れない
tmux -V でインストールを確認し、source ~/.zshrc で設定を反映します。急ぐ場合は tmux new-session -A -s agent を直接使ってください。
Macがスリープして作業が止まる
nosleep または nosleep-on を使います。安定運用したい場合は、電源接続中のMacを開いた状態、または据え置きMacで試すのが安全です。
設定後に確認すること
- スマホのTailscaleでMacがオンラインに見える
- MoshiからSSHでMacに入れる
- MoshiからMoshでMacに入れる
- remote test でtmuxセッションに入れる
- Moshiを閉じて再接続しても同じtmuxセッションに戻れる
- Mac側で nosleep が使える
- ClaudeCodeまたはCodex CLIがtmux内で起動する
実務での使い方
この環境ができると、移動中にClaudeCodeへブログ構成を作らせる、Codex CLIに小さなバグ修正を依頼する、テストが落ちた理由だけ確認する、SNS投稿の候補をCSVに整える、といった作業ができます。
ただし、スマホから本番反映までやるのは慎重にしてください。スマホ作業は確認や追加指示には強いですが、細かい差分レビューには向きません。
- 移動中: 調査、下書き、構成、軽微な修正、テスト確認
- PC前: 差分レビュー、本番反映、環境変数、決済、DB作業
まとめ ClaudeCodeをスマホ操作するならtmuxまで入れる
スマホからClaudeCodeやCodex CLIを使うなら、ただSSHするだけでは弱いです。Tailscaleで安全な接続経路を作り、MoshiでスマホからMacへ入り、Moshでモバイル回線に強くし、tmuxで接続切れから作業を守り、caffeinateでMacのスリープを防ぎます。
alias nosleep='caffeinate -dimsu'
remote() {
local name="${1:-agent}"
tmux new-session -A -s "$name"
}
よくある質問
Moshiだけで十分ですか?
短時間の接続ならMoshiだけでも使えます。ただし、ClaudeCodeやCodex CLIに長い作業を任せるならtmuxを併用してください。
Tailscaleは必須ですか?
必須ではありませんが、初心者にはかなりおすすめです。SSHをインターネットへ直接公開するより、Tailscale内のプライベート接続で扱う方が始めやすいです。
Typelessは必須ですか?
必須ではありません。ただ、スマホから長いプロンプトを打つのは大変です。話した内容を整えて貼れる音声入力を使うと、移動中のAIエージェント操作がかなり楽になります。
スマホからClaudeCodeを動かす環境を一緒に整えます
最初のSSH、Tailscale、tmux、スリープ対策で詰まる人は多いです。自分のMacで設定できるか不安な人は、公式LINEから相談してください。