はじめに
Claude Code にコマンド実行を任せているときに、
「Claude Code、そのターミナルセッションをくれ!ここだけ操作させろ」
みたいな場面、ありませんか?
- 🧑 パスワードは自分で入力したい
- 🧑 その状況を自分で確認したい
- 🤖 でも、それ以外は全部やってほしい
かといって、最初からすべて手動でやるのもだるい。
出来ないのかと思っていたら、tmux で簡単にできたという小ネタです。
注意
tmuxでターミナルセッションを継続的に共有できるため、
root状態やsudo認証後の権限状態などもそのまま引き継がれます。
意図しない操作や権限の利用には十分注意してください。
おまけ: 図解 (ChatGPT Images 2.0)
これ一枚で良いんじゃない
マルチエージェントはまだ使わないし、tmuxもねえ?
tmux というと、やや玄人向けのツールというイメージがあります。
さらに最近では Claude Code とセットで紹介されることも増えました。
- マルチセッション
- 画面分割
- 複数ターミナル管理
-
Claude Codeで、さらにドン- マルチエージェントで動かして、
Claude Codeを協調させてみた。画面6分割!! - というか、公式が
Agent Teamsでマルチエージェント!!
- マルチエージェントで動かして、
ただ、今回の用途はもっとシンプルです。
AIが操作しているターミナルに、人間が途中から入って操作する
という、痒いところに手を届かせる使い方です。
tmuxでセッションを共有する
やることはシンプルです。
-
tmuxでセッションを作成する -
Claude Codeにそのセッション内で作業してもらう - 必要なときに人間がattachして操作する
もちろんコマンドなどを逐一指示する必要はありません。
下記のようなプロンプトで依頼するだけで、ほぼ自動で判断して作業してくれます。
これからはtmuxセッションを作成して、そこで作業をしてください。
作成したセッションは、ユーザーにattachが出来るコマンドとして共有してください。
ユーザー入力が必要な場合は、このセッションを共有して操作します。
tmux が入ってないとinstallもしてくれまました。
ちなみにプロンプトの書き方を相談したところ、CLAUDE.md などにルールとして記述しておくと便利とのこと。
デモ
題材
つかう題材はこちら。
パスワード入力を求める風なshellをつくってとお願いしたら、こんな 凶悪(prodってやる気まんまん) 素敵なfake_auth.shを作ってくれました。
$ ./fake_auth.sh
Before: tmuxがないと認証で詰まる
(事前打ち合わせの結果) うまく失敗してくれました。
🧑 この認証スクリプトを実行して動作確認して
🤖 実行できませんでした。
read -s によるパスワード入力プロンプトが表示されているはずですが、私のツール環境はインタラクティブなターミナルセッションを持たないため、
まさに、こんな状況で、そのターミナルに入力させてくれー!!ってときですね。
After: tmuxで作業して
1. セッションを作って
🧑これからはtmuxセッションを作成して、そこで作業をしてください。
作成したセッションは、ユーザーにattachが出来るコマンドとして共有してください。
ユーザー入力が必要な場合は、このセッションを共有して操作します。
🤖 セッションを作成しました。以下のコマンドでattachできます:
tmux attach -t demo
準備できたら指示してください。
2. Claude Codeが作業
この状況で作業を依頼すると、tmux send-keysを使って、人知を超えた コマンドを実行してくれます。
🧑 この認証スクリプトを実行して動作確認して
🤖 tmux send-keys -t demo "bash /home/xxxxxx/fake_auth.sh"
3. ユーザーが作業
ユーザーがセッションにAttachして作業します。
tmux attach -t demo
4. Cluade Codeが作業を確認
作業が終わったらClaudeに報告します。
🧑 完了。認証できてる?
🤖 認証成功しています。
Claude Codeは、この確認を内部的に tmux capture-pane を使って行っています。
tmux capture-pane -t demo -p
このコマンドにより、tmuxセッション内の出力ログ(画面内容)を取得し、その結果をもとに「認証成功しているか」などを判断しているようです。
5. Claude Codeが作業を継続 (作業も見れる)
この仕組みの良さの1つとして、tmux のセッションをユーザーが見続けることも出来るため、Claude Codeが実行したコマンドの生ログも確認できる点です。
🧑 じゃあ、デモ風に色々作業してみて
🤖 デモ風に色々やってみます。
注意点(再掲)
注意
tmuxでターミナルセッションを継続的に共有できるため、
root状態やsudo認証後の権限状態などもそのまま引き継がれます。
意図しない操作や権限の利用には十分注意してください。
まとめ
普段の利用で少し困っていたポイントだったのですが、AI関連の情報をキャッチアップする中で、たまたまtmuxと組み合わせることで解決できることに気づきました。
情報のキャッチアップと実践、この両輪を回すことが、新しい使い方や実用的な解決を見つけられるのかなと思います。






