Claude Codeに慣れてくると、1セッションだけで作業を回すのが物足りなくなる瞬間が来ます。「待っている時間に別の作業もやらせたい」「ブランチごとに並走させたい」と思い始めたら、並列運用の出番です。

この記事は、Claude Codeを並列で動かす現実的な選択肢と、私が落ち着いた組み合わせを整理したものです。

1セッションだけだと時間が足りなくなる

Claude Codeは1つの会話に集中するスタイルが基本です。これは設計的にきれいですが、いくつか不便も生む。

待ち時間の問題が分かりやすい例です。長めの調査をClaudeに任せている間、ターミナルは応答待ち。私はその時間に手作業をしようとして、結局なにも手につかず、待つだけの数分を何度も無駄にしました。

並列に動かせれば、Aの作業を待っている間にBを進められる。シンプルですが、効きます。

並列にする3つの選択肢

並列の作り方は、おおむね3つの段階があります。

  1. 複数ターミナルでそれぞれClaude Codeを起動する
  2. git worktreeでブランチごとに作業空間を分ける
  3. 1セッション内でサブエージェントに分担させる

下に行くほど高度ですが、最初の選択肢でも十分実用になります。順に見ていきます。

複数ターミナルで別作業を分担

いちばん手軽です。ターミナルアプリでタブを2つ3つ開き、それぞれで claude を起動する。それぞれが独立したセッションとして並走します。

注意点は、同じプロジェクトフォルダで複数セッションを動かすと、ファイル編集が衝突しうること。Aのセッションが書いたファイルを、Bのセッションが上書きする事故が起きます。これを避けるには、片方を読み取りや調査専門にする、編集対象のフォルダを分ける、といった整理が要ります。

私は「調査用セッション」と「実装用セッション」を分けて使う運用に落ち着きました。役割分担を明示すれば、衝突は起きません。

git worktreeでブランチごとに走らせる

衝突を物理的に避ける本格的な手段が、git worktreeです。

git worktreeは、同じリポジトリの別ブランチを、別フォルダとしてチェックアウトする機能です。1つのリポジトリを別の場所に「分身」として展開できる、と考えるとイメージしやすい。

各worktreeで独立したClaude Codeを起動すれば、それぞれが別ブランチの別フォルダを触るので、衝突がそもそも起きません。ブランチ別に並走したい案件、競合機能の同時開発、長く回す実験ブランチなどに向いています。

サブエージェントとの違い

並列の話で混同しやすいのが、サブエージェント(subagents)です。これは1つのセッションの中で、Claudeが内部的に別の役割を持つエージェントを呼んで分担する仕組み。

サブエージェントは「1つの大きな仕事を、内部で分担して進める」発想です。これに対し、今回の並列運用は「複数の独立した仕事を、同時に走らせる」発想。似ているようで、設計の階層が違います。

両者は併用できます。複数ターミナルで起動したそれぞれのClaude Codeが、内部でサブエージェントを呼ぶ。並列の中の並列、というイメージです。

私が落ち着いた組み合わせ

参考までに、いまの私の運用を書きます。

ふだんは2つのターミナルを開きっぱなしです。ひとつはこのSEOメディアの執筆と運営用。もうひとつは別案件の検証や下調べ用。フォルダがまったく別なので、衝突は起きません。

大きな機能改修をする時は、git worktreeを切ります。本流のworktreeで通常作業、改修用のworktreeで実験。完成したら本流にマージ。これで、長く伸びる実験が日常作業を圧迫しません。

サブエージェントは、それぞれのセッション内で必要に応じて自動で呼ばれる任せ方です。意識して呼び出すというより、Claudeが判断する。並列実行の話題から考え方の話までは別記事にも書きました。

並列が向かない場面もある

最後に注意点を。並列は万能ではありません。

頭の中で2つ以上のスレッドを同時に管理するのは、意外と疲れます。集中の対象を切り替えるたびに、思考のロード時間が発生する。手が空くからといって2つも3つも並走させると、結局どれも中途半端、ということがあります。

私が並列で動かす目安は「待ち時間が10分を超える調査が走る時だけ、もう1つ動かす」くらいの控えめさ。たくさん動かしても効率は線形には伸びません。

まとめ

  • Claude Codeの並列は「複数ターミナル」「git worktree」「サブエージェント」の3段階
  • 複数ターミナルは手軽。役割分担を明示すれば衝突は避けられる
  • git worktreeはブランチごとに作業空間を切り離す。長く伸びる実験に向く
  • サブエージェントは1セッション内の分担。並列とは設計階層が違う
  • 私の運用は常時2ターミナル+大規模改修時はworktree追加
  • 並列は人間側の集中も食う。動かしすぎず、待ち時間が長い時だけ足す