「リモートのサーバーでClaude Codeを動かしていたら、SSH(リモートログイン)が切れてセッションが消えました」 — 同僚から聞いた話です。重い処理を任せて昼休みに席を立ち、戻ってきたら全部やり直し、というあるあるです。

この記事は、tmuxというツールとClaude Codeを組み合わせて、こうした事故を物理的に防ぐ運用を整理したものです。エンジニア寄りの内容なので、ふだんサーバーに触らないマーケや経理の方は読み飛ばしてもらって構いません。リモートのサーバーを触る人だけが必要になる話です。

tmuxは「ターミナルの中に独立した作業環境を持つ」仕組み

tmux(ティーマックス)は、ターミナルマルチプレクサと呼ばれる種類のツールです。簡単にいうと、ひとつのターミナル画面の中に、複数の独立した作業空間を持てるようにする仕組み。

決定的な特徴は、tmuxの中で動かしたプロセス(プログラム)は、ターミナルを閉じたりSSHが切れたりしても動き続けること。あとで tmux attach でその作業空間にまた入り直せます。

Claude Codeのような「長く動かしたいセッション」と、相性が抜群です。

SSHが切れてもClaude Codeは生き続ける

具体的な使い方を順を追って書きます。

# サーバーにSSHでログイン
ssh user@my-server

# tmuxセッションを新規作成
tmux new -s claude

# tmuxセッションの中でClaude Codeを起動
claude

これで、tmuxセッション「claude」の中でClaude Codeが動き始めます。

ここでうっかりノートPCの蓋を閉じてSSHが切れたとします。ふつうなら起動中のClaude Codeはそこで終わり、ですが、tmuxセッションは生きたまま。あとでもう一度SSHでつなぎ直して、tmux attach -t claude を打てば、Claude Codeが続きから動いている状態に戻れます。

これだけでも、リモート作業の安心感が大きく変わります。

ペイン分割で複数セッションを並走

tmuxのもうひとつの便利な機能が、画面を分割して複数の作業空間を同時に見える化することです。tmuxの言葉で「ペイン」と呼びます。

たとえば、ひとつのtmuxウィンドウを左右に分割して、左で記事執筆用のClaude Code、右で別案件の検証用のClaude Codeを並走させる。Claude Codeの並列実行の選択肢のひとつとして、これが効きます。

複数のターミナルウィンドウを開くのとの違いは、ひとつの画面で完結することと、SSH切断に強いこと。私はリモート作業ではほぼtmuxで完結しています。

基本のキーバインド

tmuxを少しだけ覚えれば、ふだんの作業がぐっと楽になります。最低限のキー操作を表で。

操作

キー(デフォルト)

プレフィックスキー

Ctrl+b

縦に分割

Ctrl+b の後に %

横に分割

Ctrl+b の後に "

ペイン間移動

Ctrl+b の後に矢印キー

ウィンドウ作成

Ctrl+b の後に c

セッションから抜ける

Ctrl+b の後に d

すべて「Ctrl+b を押してから別のキー」という二段押しです。慣れると指が勝手に動くようになります。

どんな場面でtmuxを使うべきか

正直に書きます。tmuxは全員に必要なツールではありません。

向くのは、リモートのサーバー上でClaude Codeを動かす人、長時間かかる処理を任せて席を離れる必要がある人、複数の作業空間を同時に見たい人。私の場合は、業務委託先のサーバーに入ってClaude Codeを走らせるケースが多く、tmuxなしでは作業が成り立たないレベルです。

向かないのは、ローカルマシン中心の作業しかしない人、覚えるキー操作が増えるのが負担に感じる人。デスクトップアプリやふつうのターミナルで完結する作業なら、tmuxを導入する手間と引き換えにする価値は見えにくいです。

WezTermやWindows Terminalとの関係

最近のターミナルアプリ(WezTermやWindows Terminalなど)には、ペイン分割やタブの機能が組み込まれています。だからtmuxが要らなくなった、という見方もあります。

たしかにローカルだけで完結するなら、WezTerm単体で困らない人も多い。tmuxが今でも要る理由は、「SSH越しの永続化」と「サーバー側で動き続けるセッション」というローカル端末アプリでは実現できない部分にあります。

「ローカルはWezTerm、リモートはtmux」、というのが私の落としどころです。

まとめ

  • tmuxはターミナルの中に独立した作業環境を持てるツール
  • SSH切断やターミナル閉じでもtmux内のClaude Codeは動き続ける
  • tmux attach -t セッション名 で続きから入り直せる
  • ペイン分割で複数のClaude Codeを並走させられる
  • 基本キーは Ctrl+b の後の二段押し。慣れれば指が動くようになる
  • リモート作業中心の人向け。ローカル完結なら無理に覚えなくていい