0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Codeでtmuxを使って「人間はパスワードだけ打つ」と小ネタ

0
Last updated at Posted at 2026-04-24

はじめに

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でセッションを共有する

やることはシンプルです。

  1. tmux でセッションを作成する
  2. Claude Code にそのセッション内で作業してもらう
  3. 必要なときに人間がattachして操作する

もちろんコマンドなどを逐一指示する必要はありません。
下記のようなプロンプトで依頼するだけで、ほぼ自動で判断して作業してくれます。

これからはtmuxセッションを作成して、そこで作業をしてください。
作成したセッションは、ユーザーにattachが出来るコマンドとして共有してください。
ユーザー入力が必要な場合は、このセッションを共有して操作します。

tmux が入ってないとinstallもしてくれまました。

image.png

ちなみにプロンプトの書き方を相談したところ、CLAUDE.md などにルールとして記述しておくと便利とのこと。

デモ

題材

つかう題材はこちら。
パスワード入力を求める風なshellをつくってとお願いしたら、こんな 凶悪(prodってやる気まんまん) 素敵なfake_auth.shを作ってくれました。

$ ./fake_auth.sh 

image.png

Before: tmuxがないと認証で詰まる

(事前打ち合わせの結果) うまく失敗してくれました。

🧑 この認証スクリプトを実行して動作確認して

🤖 実行できませんでした。

  read -s によるパスワード入力プロンプトが表示されているはずですが、私のツール環境はインタラクティブなターミナルセッションを持たないため、

まさに、こんな状況で、そのターミナルに入力させてくれー!!ってときですね。

816cdc64-1d1c-4d34-8c55-95b00ac15d14.png

After: tmuxで作業して

1. セッションを作って

🧑これからはtmuxセッションを作成して、そこで作業をしてください。

  作成したセッションは、ユーザーにattachが出来るコマンドとして共有してください。
  ユーザー入力が必要な場合は、このセッションを共有して操作します。
🤖 セッションを作成しました。以下のコマンドでattachできます:
 
 tmux attach -t demo
  準備できたら指示してください。

image.png

2. Claude Codeが作業

この状況で作業を依頼すると、tmux send-keysを使って、人知を超えた コマンドを実行してくれます。

🧑 この認証スクリプトを実行して動作確認して
🤖 tmux send-keys -t demo "bash /home/xxxxxx/fake_auth.sh" 

3. ユーザーが作業

ユーザーがセッションにAttachして作業します。

tmux attach -t demo

image.png

4. Cluade Codeが作業を確認

作業が終わったらClaudeに報告します。

🧑 完了。認証できてる?
🤖 認証成功しています。

Claude Codeは、この確認を内部的に tmux capture-pane を使って行っています。

tmux capture-pane -t demo -p

このコマンドにより、tmuxセッション内の出力ログ(画面内容)を取得し、その結果をもとに「認証成功しているか」などを判断しているようです。

image.png

5. Claude Codeが作業を継続 (作業も見れる)

この仕組みの良さの1つとして、tmux のセッションをユーザーが見続けることも出来るため、Claude Codeが実行したコマンドの生ログも確認できる点です。

🧑 じゃあ、デモ風に色々作業してみて
🤖 デモ風に色々やってみます。

8ee1e5b4-a265-49fc-9f9a-116df5a58dd0.png

注意点(再掲)

注意
tmuxでターミナルセッションを継続的に共有できるため、
root状態やsudo認証後の権限状態などもそのまま引き継がれます。
意図しない操作や権限の利用には十分注意してください。

まとめ

普段の利用で少し困っていたポイントだったのですが、AI関連の情報をキャッチアップする中で、たまたまtmuxと組み合わせることで解決できることに気づきました。

情報のキャッチアップと実践、この両輪を回すことが、新しい使い方や実用的な解決を見つけられるのかなと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?