Skip to content

原文(日本語に翻訳)

同じプロジェクトディレクトリで複数のClaude Codeセッションを実行している際にBashツールの出力が失われる問題を修正しました。

原文(英語)

Fixed Bash tool output being lost when running multiple Claude Code sessions in the same project directory

概要

同じプロジェクトディレクトリで複数のClaude Codeセッションを同時に起動していると、Bashツールが実行したコマンドの出力が一方または両方のセッションで失われることがありました。バージョン2.1.73でこの競合状態が修正され、複数セッションの並行実行が安全に行えるようになりました。複数のターミナルウィンドウやtmuxペインで同じプロジェクトを扱う場合に安心して利用できます。

基本的な使い方

修正後は、同じプロジェクトディレクトリで複数のClaude Codeセッションを起動しても、それぞれのセッションのBashコマンド出力が正しく維持されます。

bash
# ターミナル1: バックエンド開発用セッション
cd /my-project
claude

# ターミナル2: フロントエンド開発用セッション(同じプロジェクト)
cd /my-project
claude

実践例

tmuxで複数セッションを並行実行する

bash
# tmuxで新しいウィンドウを作成して複数セッションを管理
tmux new-session -s backend -d
tmux new-window -t backend -n frontend

# バックエンド用セッション
tmux send-keys -t backend:0 'cd /my-project && claude' Enter

# フロントエンド用セッション(同じディレクトリ)
tmux send-keys -t backend:frontend 'cd /my-project && claude' Enter

異なるサブタスクを並行処理する

bash
# セッション1: テストの実行と修正を担当
claude  # "テストを実行して失敗したものを修正してください"と依頼

# セッション2: ドキュメント更新を担当(同じプロジェクト)
claude  # "READMEとAPIドキュメントを更新してください"と依頼

バックグラウンドエージェントとの組み合わせ

bash
# メインセッション: インタラクティブな開発
claude

# サブエージェントをバックグラウンドで起動(Claude Codeの機能)
# --print フラグで非インタラクティブに実行
claude --print "テストスイートを実行して結果を報告してください" &

注意点

  • この修正以前(v2.1.73より前)は、同じプロジェクトで複数セッションを起動するとBashの出力が正しく返らないことがあり、コマンドが成功したのに出力が空になるなどの問題が発生していました
  • 複数セッションでファイルを同時編集する場合は、Gitでの変更管理に注意してください(これはClaude Code側の問題ではなくGitの競合管理の問題です)
  • 並行セッション数が多い場合、システムリソース(CPU、メモリ)の使用量が増加します
  • セッションブランチ機能(/branch)を使うと、同じプロジェクトで独立したコンテキストを持つセッションを管理しやすくなります

関連情報