Agent Skills by ALSEL
汎用ソフトウェア開発⭐ リポ 75品質スコア 78/100

tmux

tmuxセッションをリモートで制御し、キーストロークを送信してペイン出力をキャプチャすることで、Python、Node、gdbなどのインタラクティブなCLIを操作できます。

description の原文を見る

Remote control tmux sessions for interactive CLIs (python, node, gdb, etc.) by sending keystrokes and capturing pane output.

SKILL.md 本文

🚀 tmux スキル

tmux セッションをプログラムで制御して、対話的なターミナルアプリケーション(REPL、デバッガ、データベース)をノンブロッキングで実行します。


📋 クイックスタート(簡単な方法)

自動出力キャプチャ + AI 分析用に LogPilot を使用します:

# Install LogPilot
cargo install logpilot

# Watch your tmux session
logpilot watch mysession --pane mysession:0.0

# Ask AI about what's happening
logpilot ask "What errors appeared?"
logpilot summarize --last 5m

Claude Code に追加: claude mcp add --scope user logpilot -- logpilot mcp-server


📋 手動制御(生の tmux)

個人用 tmux との競合を避けるために独立したソケットを使用します:

# Setup socket
export SOCKET="${TMPDIR:-/tmp}/ai-tmux-sockets/agent.sock"
mkdir -p "$(dirname "$SOCKET")"

# Create session and run
SESSION=agent-py
tmux -S "$SOCKET" new -d -s "$SESSION"
tmux -S "$SOCKET" send-keys -t "$SESSION" 'python3 -q' Enter

# Capture output manually
tmux -S "$SOCKET" capture-pane -p -J -t "$SESSION" -S -100

# Cleanup
tmux -S "$SOCKET" kill-session -t "$SESSION"

📋 コアコマンド

操作コマンド
新規セッションtmux -S "$SOCKET" new -d -s NAME
キー送信tmux -S "$SOCKET" send-keys -t NAME 'cmd' Enter
リテラル送信tmux -S "$SOCKET" send-keys -t NAME -l 'text'
出力をキャプチャtmux -S "$SOCKET" capture-pane -p -J -t NAME -S -N
セッション一覧tmux -S "$SOCKET" list-sessions
セッション終了tmux -S "$SOCKET" kill-session -t NAME

コントロールキー: C-c (SIGINT)、C-d (EOF)、C-z (中断)、Escape


📋 対話的なレシピ

🔁 Python REPL

SESSION=agent-py
SOCKET="${TMPDIR:-/tmp}/ai-tmux-sockets/agent.sock"
tmux -S "$SOCKET" new -d -s "$SESSION"
tmux -S "$SOCKET" send-keys -t "$SESSION" 'PYTHON_BASIC_REPL=1 python3 -q' Enter
sleep 1
tmux -S "$SOCKET" send-keys -t "$SESSION" -l 'print(2+2)'
tmux -S "$SOCKET" send-keys -t "$SESSION" Enter
tmux -S "$SOCKET" capture-pane -p -J -t "$SESSION" -S -10
tmux -S "$SOCKET" kill-session -t "$SESSION"

🔁 GDB デバッガ

SESSION=agent-gdb
SOCKET="${TMPDIR:-/tmp}/ai-tmux-sockets/agent.sock"
tmux -S "$SOCKET" new -d -s "$SESSION"
tmux -S "$SOCKET" send-keys -t "$SESSION" 'gdb --quiet ./program' Enter
tmux -S "$SOCKET" send-keys -t "$SESSION" 'set pagination off' Enter
tmux -S "$SOCKET" send-keys -t "$SESSION" 'run' Enter
# ... later ...
tmux -S "$SOCKET" send-keys -t "$SESSION" C-c
tmux -S "$SOCKET" send-keys -t "$SESSION" 'bt' Enter
tmux -S "$SOCKET" send-keys -t "$SESSION" 'quit' Enter 'y' Enter

Node.js / psql など

同じパターン: newsend-keyscapture-panekill-session


📋 LogPilot リファレンス

タスクコマンド
セッション監視logpilot watch SESSION
ペイン監視logpilot watch SESSION --pane TARGET
AI サマリlogpilot summarize --last 10m
質問logpilot ask "Why is it failing?"
ログ付きlogpilot ask "Explain" --include-logs
ステータスlogpilot status

MCP セットアップ

{
	"mcpServers": {
		"logpilot": {
			"command": "logpilot",
			"args": ["mcp-server"]
		}
	}
}

または: claude mcp add --scope user --transport stdio logpilot -- logpilot mcp-server


🎨 ベストプラクティス

  1. LogPilot を使用する — 出力をキャプチャして分析する最も簡単な方法です
  2. 常に -S "$SOCKET" を使用する — ユーザーの tmux との競合を防ぎます
  3. -l フラグを使用する — リテラルテキスト、シェル展開の問題がありません
  4. PYTHON_BASIC_REPL=1 — 対話的な Python に必須です
  5. 完了時にセッションを終了する — リソースリークを防ぎます

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
jellydn
リポジトリ
jellydn/my-ai-tools
ライセンス
MIT
最終更新
2026/5/10

Source: https://github.com/jellydn/my-ai-tools / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: jellydn · jellydn/my-ai-tools · ライセンス: MIT