Skip to content

原文(日本語に翻訳)

シェルの rc ファイルの初期化が遅い場合に tmux チームメートペインが起動に失敗する問題と、エージェント生成中に入力したキーストロークがリーダープロンプトではなく新しい tmux ペインに漏れる問題を修正しました。

原文(英語)

Fixed tmux teammate panes failing to launch when the shell has slow rc-file initialization, and keystrokes typed during agent spawn leaking into the new tmux pane instead of the leader prompt.

概要

tmux を使用したチームメート機能(複数エージェントが tmux ペインで協調動作する機能)における 2 つのバグが修正されました。1 つ目は、.bashrc.zshrc などのシェル設定ファイルの読み込みに時間がかかる環境でペインの起動に失敗する問題です。2 つ目は、エージェント生成中にユーザーが入力したキーが、メインプロンプトではなく新しく作成された tmux ペインに送られてしまう問題です。

基本的な使い方

この修正は自動的に適用されます。tmux チームメートを使用している場合:

bash
# tmux セッション内で Claude Code を起動
tmux new-session -d -s work
tmux send-keys "claude" Enter

# チームメート機能の使用
# 修正前: rc ファイルの初期化が遅い場合、ペインが起動しない
# 修正後: 初期化を待機してからペインが起動する

実践例

rc ファイルが遅い環境での改善

bash
# 例: nvm, conda, pyenv など重いツールを .bashrc/.zshrc で初期化している場合
# ~/.bashrc に重い初期化処理がある環境
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # これが遅い

# 修正後: Claude Code が初期化完了を適切に待機するため、チームメートペインが正常起動

キーストローク漏れの修正

# 修正前の問題
1. チームメートが生成中(エージェントスポーン中)
2. ユーザーが「hello」と入力 → 新しいペインに "hello" が送られる
3. メインプロンプトには入力が届かない

# 修正後
1. チームメートが生成中
2. ユーザーが「hello」と入力 → リーダープロンプトに正しく入力される
3. チームメートペインに意図しないキー入力が漏れない

tmux チームメート機能の使用

bash
# tmux 環境での Claude Code チームメートセッション
# 設定が必要な場合は .claude/settings.json で tmux を有効化
{
  "tmux": {
    "enabled": true
  }
}

注意点

  • この修正は tmux を使用したチームメート機能に特有の問題です
  • tmux を使用していない場合はこの修正の影響を受けません
  • rc ファイルの遅さに関する修正は、カスタム $SHELL または重いプラグインマネージャー(oh-my-zsh、zimfw など)を使用している場合に特に恩恵があります
  • キーストローク漏れの修正は、エージェントスポーン中のユーザー操作の安全性を高めます

関連情報