😽
tilex: tmuxペインを一括生成してCLIを並列実行するランチャー
tilexは、tmux上で複数ペインを一気に生成した上でコマンドを実行できるシンプルなシェル関数です。ペインは自動でタイル状に整列されるため、同時進行の処理を視認性の高い状態で確認できます。本記事ではtilexの目的、実装、最小限のtmux設定について解説します。また、ユースケースの例として、AnthropicのClaude Codeと組み合わせる方法を紹介します。
以下のポストを見て、ターミナルマルチプレクサでやる方がとりまわしがいいかなと思って作りました。
実際に動作している様子は以下の動画の通りです。
tilexが解決する課題
- ペインの大量生成を手作業で行う手間を省きます。
- 分割後のレイアウト調整を自動化し、常に均等なタイル配置を保ちます。
- tmuxセッションの内外どちらからでも同じコマンドで使えます。
tilexの実装
以下の関数を~/.zshrc
や~/.bashrc
に追加してください。
# tilex: <number> 個のペインで <command> を並列実行
# 使い方: tilex 4 -- python script.py
tilex() {
local count session="multirun"
# ---------- 引数パース ----------
while (($#)); do
case $1 in
--) shift; break ;;
[0-9]*) count=$1; shift ;;
*) echo "Usage: tilex <number> -- <command>"; return 1 ;;
esac
done
[[ -z $count || $# -eq 0 ]] && { echo "Usage: tilex <number> -- <command>"; return 1; }
local cmd="$*"
# ---------- セッション準備 ----------
if [[ -z $TMUX ]]; then
tmux new-session -d -s "$session" "$cmd"
target="$session"
created=1 # 1ペイン目は new-session で生成済み
else
target="." # 現ウィンドウ
created=0
fi
# ---------- ペイン生成 ----------
for ((i = created; i < count; i++)); do
tmux split-window -t "$target" "$cmd" && ((created++))
done
# ---------- レイアウト整形と接続 ----------
tmux select-layout -t "$target" tiled
[[ -z $TMUX ]] && tmux attach-session -t "$session"
echo "✅ tilex: created $created/$count pane(s)."
}
実装のポイント
-
-- <command>
形式:コマンド全体をダブルクオートせず渡せるようにします。 -
$TMUX
判定:tmux内外どちらでも同じ書式で実行できます。 -
select-layout tiled
:生成後に必ずタイル状へ整列し、均等なレイアウトを保ちます。
最小構成のtmux設定
以下に、tilexを使う上で設定しておくと良さそうな内容を書いておきます。
set -g mouse on # ペインをマウスクリックで選択可能にします
bind n split-window \; select-layout tiled # 手動分割時も即タイル整列します
-
mouse on
により、ペインが増えてもマウスで直感的にフォーカスを切り替えられます。 -
bind n ...
は「今いるペインを分割し、即タイルへ整列する」ショートカットです。tilexで生成した後に手動でペインを追加したい場合でも、レイアウトが崩れません。
この2行だけで、tilexと相性の良いtmux環境が整います。
ユースケース例:Claude Codeを並列実行
AnthropicのClaude Codeは、claude
コマンドによって起動します。tilexを使えば、以下のようにして同時に起動できます。
tilex 4 -- claude
tilexはClaude Code以外のどんなCLIコマンドにも利用できますが、ぶっちゃけこのユースケースのために作りました。
まとめ
tilexは、tmuxペインの一括生成とタイル整列を1行で実行し、CLIを並列で動かす作業を大幅に効率化します。大量のペインを開いてもマウスで直感的に操作でき、レイアウトは常に美しく保たれます。
tilexを導入して、コーディングAIエージェントを徹底的に駆使しましょう。
GitHubで編集を提案
Discussion