case_1222

Claude Codeの並列実行|複数セッションを動かす5つの方法

Claude Codeの並列実行|複数セッションを動かす5つの方法

Claude Codeの並列実行には、サブエージェントやagent view、dynamic workflowsなど5つの方法があります。選び方、worktreeでの分離、使用量の増え方を公式情報で整理しました。

2026年10月8日に、公式ドキュメントと v2.1.293 までの CHANGELOG を確かめてまとめた(確認日:2026年10月8日・Claude Code CHANGELOG)。Claude Code で複数の作業を同時に進める方法を、公式ドキュメントは5つに整理している。サブエージェント、agent view、Agent Teams、dynamic workflows、Projects だ。違いは、自分がどこまで関わるかと、作業が自分のマシンで動くかクラウドで動くかにある(Run agents in parallel)。

並列実行と言っても、同じ会話の中で調べ物を分けたいのか、互いに関係のない修正を別々のセッションに任せたいのかで、選ぶ方法は変わる。この記事では、それぞれの方法の違い、選び方、worktree で編集をぶつけない設定、動いている作業の確かめ方、使用量の増え方を順に整理する。

この記事の要点

  • 方法:サブエージェント、agent view、Agent Teams、dynamic workflows、Projects。
  • 会話の中で分ける:サブエージェント。調べ物やログの読み込みを別のコンテキストに逃がす。
  • 独立した作業を任せる:agent view。claude agents で開く。研究プレビューの機能。
  • 分担と連携を任せる:Agent Teams。実験的な機能で、既定では無効。
  • 大人数を回す:dynamic workflows。段取りをスクリプトが持つ。
  • クラウドで続ける:Projects。Pro と Max の公開ベータ。
  • 編集の分離:同じファイルを触るなら worktree で分ける。
  • 使用量:並べた数に応じて増える。
  • 対象読者:複数の修正や調査を同時に進めたい開発者、並列の方法を選びかねている開発リード。

Claude Codeの並列実行とは|公式が挙げる5つの方法

公式ドキュメントは、複数の作業を同時に進める方法を5つ挙げている。どの方法でも、働き手は Claude のセッションだ(Run agents in parallel)。

中央の並列実行から、サブエージェント、agent view、Agent Teams、dynamic workflows、Projectsの5つの方法へ線が伸びる図
公式ドキュメントが挙げる、並列実行の5つの方法

5つの方法の一覧

方法 得られるもの 向く場面
サブエージェント セッションの中で、別のコンテキストで脇の作業をして要約を返す働き手 検索結果やログ、ファイルの中身でメインの会話があふれそうな時
agent view バックグラウンドのセッションを同じ画面から任せて見守る。claude agents で開く。研究プレビュー 独立した作業がいくつかあり、状態だけ見て、必要な時だけ入りたい時
Agent Teams 共有のタスクリストとエージェント間のメッセージを持つ、連携した複数のセッション。リードが管理する。実験的で既定では無効 Claude にプロジェクトを分割させ、割り当てと同期を任せたい時
Projects claude.ai/code かデスクトップアプリの中の、続いていく会話。Claude がスレッドと呼ぶ並列のセッションを始める。Pro と Max の公開ベータ 作業が数日から数週間にまたがり、マシンを閉じても進めたい時
dynamic workflows 多数のサブエージェントを動かし、結果を突き合わせるスクリプト 少数のサブエージェントでは足りない時、結果を互いに検証させたい時

並列を支える機能

エージェントを動かす方法そのものではないが、並列の作業を支える機能がある。

  • worktree:セッションごとに別の Git のチェックアウトを与え、並列のセッションがそれぞれ自分のファイルを編集できるようにする。
  • セッション間メッセージ:Claude がほかの Claude Code のセッションを一覧し、メッセージを送る。
  • /batch:大きな変更を5から30個の、worktree で分離したサブエージェントに分けるスキル(Run agents in parallel)。

並列に見えて役割が違う機能

  • バックグラウンドの bash コマンド:シェルコマンドを、会話を止めずに動かす。エージェントは起動しない。
  • フォークしたサブエージェント:会話の文脈をすべて引き継ぐサブエージェント。/subtask で始める。セッション全体を新しいバックグラウンドのセッションに写す時は /fork を使う。
  • ルーティン:クラウドでスケジュールに沿ってセッションを動かす。自分のマシンで並列に動かすものではない。

選び方|3つの問いで決める

公式ドキュメントは、誰が段取りを持つか、作業どうしで連絡が要るか、同じファイルを触るか、の3点で選ぶよう勧めている(Run agents in parallel)。

誰が段取りを持つか、作業どうしで連絡が要るか、同じファイルを触るかの3つの問いを左に並べ、右にサブエージェント、Agent Teams、worktreeを対応させた図
段取り、連絡、ファイルの3点で方法を選ぶ

誰が段取りを持つか

  • Claude が会話の中で作業を任せ、結果を集める:サブエージェント。
  • 自分が独立した作業を渡して、後で見に来る:agent view。
  • Claude が計画し、割り当て、複数の働き手を監督する:Agent Teams。
  • Claude のその都度の判断ではなく、スクリプトが計画を持つ:dynamic workflows。

作業どうしで連絡が要るか

サブエージェントは、起動した会話に結果を返す。agent view のセッションは、結果を利用者にだけ返す。Agent Teams のチームメイトは、互いに直接メッセージを送る。自分で動かしているセッションの間では、セッション間メッセージで Claude が発見を渡せる。セッション間メッセージはClaude Code複数セッション連携|並行開発を同期するで扱っている。

同じファイルを触るか

触るなら worktree で分ける。サブエージェントと、自分で動かすセッションは、それぞれ別の worktree を使える。Agent Teams はチームメイトを worktree で分離しないので、各チームメイトが別のファイル群を受け持つように作業を分ける。

方法1|サブエージェントで会話の中を分ける

サブエージェントは、セッションの中で脇の作業を受け持つ働き手だ。別のコンテキストで作業し、メインの会話には要約だけを返す。検索結果やログでメインの会話があふれるのを防げる(Create custom subagents)。

左はメインの会話に検索結果とログが詰まっている状態、右はサブエージェントが別のコンテキストでそれらを受け持ち、メインの会話には要約だけが返る状態を比べた図
調べ物を別のコンテキストに逃がし、要約だけを受け取る

標準で入っているもの

  • Explore:コードベースの検索と分析に向いた、速い読み取り専用のエージェント。
  • Plan:plan mode で、計画を出す前の調査に使われるエージェント。
  • General-purpose:探索と実行の両方が要る、複数の手順にわたる作業向けのエージェント。

前面と背面の違い

前面のサブエージェントは、終わるまでメインの会話を止める。背面のサブエージェントは、作業を続けている間に並行して動く。背面のサブエージェントが権限の要るツール呼び出しに達すると、メインのセッションに確認が出て、どのサブエージェントが求めているかが表示される。

入れ子と同時実行の上限

サブエージェントは、既定で自分のサブエージェントを起動でき、深さはメインの会話から3階層下までだ。上限は CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH で変える。同時実行にも上限がある。既定では、セッションの中で20個のサブエージェントが動いている時、さらに起動しようとすると Concurrent subagent limit reached で失敗する。この上限は CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS で変えられ、v2.1.217 以降が要る(Create custom subagents)。

自作のサブエージェントをworktreeで分ける

自作のサブエージェントは、.claude/agents/ か ~/.claude/agents/ に Markdown ファイルで定義する。定義に isolation: worktree を書くと、そのサブエージェントは一時的な git worktree の中で動く。変更が無ければ、worktree は自動で片付けられる。

---
name: migrator
description: 指定されたディレクトリの移行作業を担当する
isolation: worktree
---

担当するディレクトリだけを編集し、テストを実行してから結果を要約して返す。

作り方はClaude Codeサブエージェント並列開発入門にまとめている。

方法2|agent viewで複数のセッションを任せる

agent view は、バックグラウンドのセッションをまとめて扱う画面だ。動いているもの、入力を待っているもの、終わったものが一覧できる。研究プレビューの機能で、画面やキー操作は変わることがある(Manage multiple agents with agent view)。

上段にclaude agentsで開くagent view、中段にバックグラウンドのセッション、下段に.claude/worktrees/を置き、同じチェックアウトを読みつつファイルを編集する前にworktreeへ移ることを示した3層の図
任せたセッションは、編集の前に自分のworktreeへ移る

開き方と任せ方

シェルで claude agents を実行すると開く。画面の下の入力欄に作業を書くと、バックグラウンドのセッションとして始まる。シェルから直接始める時は --bg を付ける。開いているセッションをバックグラウンドに移す時は /background を使う。

claude agents
claude --bg "失敗が不安定なテストの原因を調べて"

バックグラウンドのセッションは、ターミナルにつながっていなくても動き続ける。agent view を閉じても止まらない。

ファイルの編集は自動でworktreeに分かれる

agent view から任せたセッションと、claude --bg で始めたセッションは、作業ディレクトリで始まる。ファイルを編集する前に、Claude はセッションを .claude/worktrees/ の下の分離された git worktree に移す。並列のセッションは同じチェックアウトを読むが、書き込みはそれぞれ自分の worktree に行う。

ただし、開いていたセッションを /background でバックグラウンドに移した場合は、作業していた場所で編集を続ける。作業ディレクトリが Git リポジトリでなく、WorktreeCreate フックも設定していない場合も、worktree には移らない。worktree が使いにくいリポジトリでは、設定の worktree.bgIsolation を "none" にすると、作業中のコピーを直接編集する。

知っておく制限

  • 使用量:バックグラウンドのセッションは、対話のセッションと同じようにサブスクリプションの使用量を消費する。公式ドキュメントは、10個のエージェントを並列で動かすと、1個の時のおよそ10倍の速さで割り当てを使うと書いている(Manage multiple agents with agent view)。
  • 動く場所:セッションは自分のマシンで動く。スリープをまたいで保たれるが、マシンをシャットダウンすると止まる。
  • 削除:Claude が作った worktree は、agent view でセッションを消すと一緒に消える。ファイルを編集したセッションは、消す前に変更をコミットする。

バックグラウンドのセッションの扱いはClaude Codeバックグラウンドセッション完全ガイドで扱っている。

開けない時の確認

claude agents が、数と設定済みのサブエージェントの一覧を表示して終わる場合、その環境では agent view が使えない。claude update で最新版にする。それでも開かない時は、設定の disableAgentView か、環境変数 CLAUDE_CODE_DISABLE_AGENT_VIEW で無効にされていないかを見る。

方法3|Agent Teamsで分担と連携を任せる

Agent Teams は、複数の Claude Code のセッションをチームとして動かす機能だ。実験的な機能で、既定では無効になっている(Orchestrate teams of Claude Code sessions)。

有効にする設定

settings.json か環境に CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 を設定する(Orchestrate teams of Claude Code sessions)。

{
  "env": {
    "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
  }
}

リードとチームメイト

あるセッションがリードになり、作業の調整、タスクの割り当て、結果のまとめを受け持つ。チームメイトはそれぞれ自分のコンテキストウィンドウで独立して動き、互いに直接やり取りする。リードを通さず、チームメイトに直接話しかけることもできる。

向く作業と向かない作業

向くのは、調査とレビュー、新しいモジュールや機能、競合する仮説でのデバッグ、フロントエンドとバックエンドとテストにまたがる変更のように、並列に調べることに意味がある作業だ。調整の手間が増え、単一のセッションよりかなり多くのトークンを使う。順番に進める作業、同じファイルの編集、依存の多い作業は、単一のセッションかサブエージェントの方が向く。セッションの再開、タスクの調整、終了の動きには既知の制限がある。

方法4|dynamic workflowsで大人数を回す

dynamic workflow は、多数のサブエージェントを一度に動かす JavaScript のスクリプトだ。Claude が作業に合わせてスクリプトを書き、ランタイムがバックグラウンドで実行する。その間もセッションは応答できる(Orchestrate subagents at scale with dynamic workflows)。

サブエージェントは1ターンに数件の任せた作業、Agent Teamsは少数の長く動く仲間、dynamic workflowsは数十から数百のエージェントと、規模が上がる3段の階段で示した図
公式ドキュメントが示す、方法ごとの規模の目安

使える条件と規模の目安

すべての有料プラン、Anthropic API、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry で使える。Pro では /config の Dynamic workflows の行でオンにする。

規模の目安として、公式ドキュメントは、サブエージェントを「1ターンに数件の任せた作業」、Agent Teams を「少数の長く動く仲間」、workflow を「1回の実行で数十から数百のエージェント」としている(Orchestrate subagents at scale with dynamic workflows)。ループや分岐、途中の結果はスクリプトが持つので、Claude のコンテキストに入るのは最終結果だけだ。

試し方

標準で入っている /deep-research を実行すると、動きを確かめられる。質問を複数の角度から Web 検索し、見つけた情報源を突き合わせ、出典つきの報告を返す。進み具合は /workflows で見る。

/deep-research What changed in the Node.js permission model between v20 and v22?

自分の作業で使う時は、プロンプトの中で workflow を使うよう頼む。保存した workflow は .claude/workflows/ か ~/.claude/workflows/ に入り、/ のコマンドとして呼べる。

実行時の上限

公式ドキュメントが挙げる上限は次のとおりだ(Orchestrate subagents at scale with dynamic workflows)。

  • 同時に動くエージェントは、既定で最大16。Claude Code が使える CPU が少ないと減る。CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS に1から256の値を設定すると変えられ、v2.1.269 以降が要る(同ページ)。
  • エージェントの合計は、実行ごとに1,000まで(同ページ)。
  • parallel() か pipeline() の呼び出しごとに渡せるのは4,096件まで(同ページ)。
  • 実行の途中で人の入力は受け付けない。段階ごとに確認したい時は、段階ごとに別の workflow として実行する。

止め方

自分の環境で無効にするには、/config で Dynamic workflows をオフにするか、~/.claude/settings.json に "disableWorkflows": true を書くか、環境変数 CLAUDE_CODE_DISABLE_WORKFLOWS=1 を設定する(Orchestrate subagents at scale with dynamic workflows)。

方法5|Projectsでクラウドに並べる

Projects は、続いていく会話の中で、Claude が作業ごとにスレッドを始める機能だ。Pro と Max の公開ベータで、段階的に提供されている。Team と Enterprise では、まだ使えない(Let Claude coordinate ongoing work with Projects)。

スレッドが動く場所

スレッドは通常、クラウドセッションだ。自分のコンピューターにしかないものが要る作業は、Remote Control を通して自分のコンピューターで動かすよう頼める。クラウドのスレッドはノート PC を閉じた後も進む。自分のコンピューターのスレッドは、そのコンピューターが起きている間だけ動く。

関連する記事

使い方はClaude Projects刷新の使い方|並列スレッド活用、クラウドセッションはClaude Codeのクラウドセッションとは|web版の使い方7手順、Remote Control はClaude Codeスマホ操作|Remote Controlで扱っている。

worktreeで編集をぶつけない

git worktree は、自分のファイルとブランチを持つ別の作業ディレクトリで、リポジトリの履歴とリモートはメインのチェックアウトと共有する(git-worktree)。セッションごとに worktree を分けると、片方が機能を作り、もう片方がバグを直す、という進め方ができる(Run parallel sessions with worktrees)。

claude --worktreeで起動し、.claude/worktrees/<name>/にworktree-<name>のブランチが作られ、終了時に変更が無ければ名前の無いセッションは自動で削除、作業が残っている時は残すか消すかを選ぶ流れを示した図
worktreeを作ってから片付けるまでの流れ

自分で始めるセッションを分ける

--worktree か -w に名前を付けて起動する。

claude --worktree feature-auth

worktree は既定で、リポジトリのルートの .claude/worktrees/<name>/ に作られ、worktree-<name> という新しいブランチになる。名前を省くと、Claude Code が名前を付ける。別のターミナルで別の名前を付けて同じコマンドを実行すれば、別の分離されたセッションになる。worktree には Git リポジトリが要る(Run parallel sessions with worktrees)。

新しいworktreeの準備

worktree は新しいチェックアウトなので、依存関係のインストールなど、開発環境の準備が要る。.env のような Git の管理外のファイルを毎回持ち込むには、プロジェクトのルートに .worktreeinclude を置く。worktree の中身がメインのチェックアウトで未追跡ファイルとして出ないよう、.claude/worktrees/ は .gitignore に足しておく。

終わった後の片付け

対話のセッションを終える時、Claude は worktree に消えては困る作業が無いかを確かめる。変更が無い時は、名前の無いセッションなら worktree とブランチを自動で削除する。作業が残っている時は、残すか消すかを聞かれる。残した場合は、終了時に表示される claude --worktree <name> --resume で戻れる。-p の非対話の実行には終了時の確認が無く、片付けは行われないので、git worktree remove で消す。

worktree の使い方はClaude Code×git worktree並列開発ガイドで詳しく扱っている。

動いている作業の確かめ方

確かめるコマンドは、どの方法で動かしたかで変わる(Run agents in parallel)。

動かし方 確かめ方
バックグラウンドのセッション claude agents で agent view を開く
今のセッションで動いている、名前の付いた背面のサブエージェント @ の入力候補に、状態つきで出る
今のセッションの背面で動くものすべて /tasks
dynamic workflows /workflows

名前が似ているが、/agents は claude agents とは別のものだ。/agents は、サブエージェントの定義ファイルの場所を案内する表示を出す。

並列にすると使用量はどう増えるか

公式ドキュメントは、複数のセッションやサブエージェントを同時に動かすと、トークンの使用量がその分だけ増えると注意している(Run agents in parallel)。

方法ごとの増え方

agent view では、並べたセッションの数にほぼ比例して割り当てを使う。Agent Teams では、チームメイトがそれぞれ自分のコンテキストウィンドウを持つので、トークンの使用量は、動いているチームメイトの数と、それぞれが動く時間に応じて増える(Manage costs effectively)。

抑え方

  • 並べる数を、独立して進められる作業の数に合わせる。依存のある作業を無理に分けない。
  • 単純な作業のサブエージェントには、定義で model: haiku を指定する(Manage costs effectively)。
  • 調べ物はサブエージェントに任せ、メインの会話に入れる量を減らす。

使用量の見方はClaude Codeトークン使用量の確認|キャッシュ節約、上限に当たった時の動きはClaude Codeの「session limit」対処法|再開手順を見てほしい。

想定シナリオ|独立した修正を並べて進める

ここからは構成例で、実在の企業や個人(チーム)の事例ではない。小さな Web サービスの開発者が、互いに関係のないバグ修正をいくつか抱えている場面を想定する。

手順1|作業が独立しているかを確かめる

修正どうしが同じファイルを触らないか、片方の結果をもう片方が待たないかを見る。独立しているなら agent view に向く。依存がある修正は、同じセッションで順番に進める。

手順2|agent viewから任せる

claude agents を開き、修正ごとに作業を書いて任せる。各セッションは、ファイルを編集する前に自分の worktree に移るので、編集はぶつからない。

手順3|調べ物はサブエージェントに逃がす

原因の調査のように、検索結果やログを大量に読む作業は、各セッションの中でサブエージェントに任せる。メインの会話には要約だけが残る。

手順4|結果を見て、コミットしてから消す

行に入力待ちや結果が出たら、そのセッションに入って中身を確かめる。agent view でセッションを消すと、Claude が作った worktree も消えるので、先に変更をコミットする。

よくある質問

Claude Codeで並列実行するには?

会話の中で作業を分けるならサブエージェント、独立した作業を別々のセッションに任せるなら claude agents で開く agent view を使う。公式ドキュメントは、このほか Agent Teams、dynamic workflows、Projects を挙げている(Run agents in parallel)。

複数セッションを同時に動かすと、編集はぶつかりませんか?

worktree で分ければぶつからない。自分で始めるセッションは claude --worktree <name> で分ける。agent view から任せたセッションは、ファイルを編集する前に自動で自分の worktree に移る。

サブエージェントは同時にいくつまで動かせますか?

既定では、セッションの中で20個が動いている時に、それ以上の起動が失敗する。CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS で変えられる(Create custom subagents)。

並列実行すると使用量はどうなりますか?

並べた数に応じて増える。agent view について公式ドキュメントは、10個のエージェントを並列で動かすと、1個の時のおよそ10倍の速さで割り当てを使うと書いている(Manage multiple agents with agent view)。

Agent Teamsとサブエージェントは何が違いますか?

サブエージェントは、起動した会話に結果を返す。Agent Teams のチームメイトは、互いに直接メッセージを送り、リードが全体を管理する。Agent Teams は実験的な機能で、既定では無効だ。

/agentsとclaude agentsは同じですか?

別のものだ。claude agents はシェルから agent view を開くコマンドで、/agents はセッションの中で、サブエージェントの定義ファイルの場所を案内する表示を出す。

あわせて読みたい

運営元 Uravation よりこの事例を自社の業務で試す場合のテーマ選定・評価・本番移行の確認項目を、無料のチェックリストにまとめています。 Claude Code業務自動化PoCチェックリストを受け取る(無料)

参考・出典

Next Step

この事例を、自社の業務に置き換える。

対象業務、利用データ、評価基準、社内展開の順番まで整理すると、AI開発ツール導入の失敗を減らせます。

導入を相談する

チームで学ぶなら: Claude Code 法人研修(2日間ハンズオン) / 1人で習得するなら: 個別指導(週1マンツーマン)