エージェントは1つでも便利です。でも、最初のエージェントのdiffをレビューしている間に、3つのエージェントが別々のタスクを進めてくれる。ターミナルのエージェントが本当に元を取れるのはここからです。ただし、失敗するのもあっという間です。2つのエージェントが同じファイルを編集する、開発サーバー同士がポートを取り合う、午後の途中で使用量の上限に達する、といった具合です。
このガイドでは、こうした問題を避ける構成を紹介します。作業の分担やレビューまでエージェントに任せたい場合は、AIコーディングエージェントのチームを動かすをご覧ください。Claude Code、Codex、Gemini CLIなど、どのエージェントCLIでも使える方法です。
要点だけ知りたい方へ
- エージェントごとに別々のタスクを与え、コードを変更する作業には専用の作業コピー(git worktree)を用意する。
- プロジェクトのエージェントはすべて1つのグリッドに表示して、どれかが自分を待っていたらすぐ気づけるようにする。
- 同じコードに対しては、2つ目のエージェントは書き手ではなくレビュアーとして使う。
- 並列のエージェントは並列で使用量を消費するので、使用量の上限に気を配る。
ステップ1:作業を独立したタスクに分ける
並列のエージェントがうまく働くのは、それぞれのタスクが同じファイルに触れないときです。良い分け方の例です。
- ある領域の機能追加と、別の領域のバグ修正
- 変更の実装と、既存コードへのテスト追加
- 1つのエージェントがコードを書き、別のエージェントがドキュメントや移行計画を書く
- 何も変更しない調査やコードリーディング
悪い分け方は、2つのエージェントに同じコンポーネントを担当させることや、あるエージェントがリファクタリングしているコードを別のエージェントが拡張することです。タスクごとに触るファイルを重ならないように説明できないなら、並列ではなく順番に実行しましょう。
ステップ2:コードを書くエージェントごとにworktreeを用意する
同じフォルダで動く2つのエージェントは、1つの作業ツリーを共有します。両方が編集すると、中途半端に適用された変更、予想外のコンフリクト、誰の変更かわからないdiffが生まれます。解決策は、タスクごとにgit worktreeを作ることです。worktreeとは、同じリポジトリを別フォルダ・別ブランチでもう1つチェックアウトしたものです。
git worktree add ../atlas-auth -b feat/auth
git worktree add ../atlas-search -b feat/searchあとは各エージェントをそれぞれのフォルダで動かし、終わったらブランチをマージします。Claude Codeならclaude --worktree feature-authで、これを1ステップで行うこともできます。依存関係、.envファイル、後片付けを含む詳細は、Claude Code・Codexのためのgit worktreeガイドで解説しています。
読み取りだけのエージェント(レビュー、調査、ドキュメントへの質問)は、メインのフォルダを共有してかまいません。
ステップ3:すべてのエージェントを1画面に並べる
並列エージェントでよくある失敗は、コードではなく注意力の問題です。バックグラウンドのタブでエージェントが許可を求めたまま、20分待ちぼうけになります。
Vibe Consoleでは、1プロジェクトにつき最大10個のターミナルを、タブまたは1×2〜3×3のグリッドで表示できます。3つのエージェントを動かすなら、次の配置が使いやすいでしょう。
| ペイン | 実行するもの |
|---|---|
| 1 | ../atlas-authでClaude Code |
| 2 | ../atlas-searchでCodex |
| 3 | メインのフォルダでClaude Code(レビュー担当) |
| 4 | 開発サーバー |
ターミナルごとに別のエージェントを動かせます。開始ボタン横で選んで**⌘K**を押してください。worktreeの中でエージェントを起動するには、先にそのフォルダへcdします。ソース管理パネルからworktreeをターミナルにドラッグすれば、パスを貼り付けられます。ターミナルの名前をタスク名に変えておくと(名前を変更…)、グリッドがそのままタスク一覧のように読めます。
各タブには、エージェントが実行中かアイドルかを示すドットが表示されます。エージェントが作業を終えたとき、または入力待ちで止まったとき、サウンドが鳴り、そのセッションでノッチが開くので、画面から目を離していても大丈夫です。詳細や、hooksを使った無料の代替手段はMacでのClaude Code通知をご覧ください。
ステップ4:2つ目のエージェントをレビュアーにする
モデルが違えば、見つけるミスも違います。手軽で効果的なパターンはこうです。
- Claude Codeが自分のworktreeで変更を実装する。
- 終わったら、同じフォルダでCodex(または別のClaude Codeセッション)を起動し、保存しておいたレビュー用プロンプトを渡す。たとえば、「コミットされていないdiffについて、バグ、足りないテスト、セキュリティ問題をレビューしてください。ファイルは編集せず、指摘はファイル名と行番号つきで列挙してください。」
- 指摘内容を最初のエージェントに貼り付けて返す。
レビュー用プロンプトは保存したプロンプト(⌘⇧S)に一度保存しておけば、どのターミナルにもワンクリックで貼り付けられます。
ステップ5:使用量の上限に気を配る
Claude CodeとCodexのプランは、ローリング方式の5時間ウィンドウや週間上限など、ウィンドウ単位で使用量を計測します。エージェントが3つなら消費もおよそ3倍の速さになり、タスクの途中で上限に達すると作業が中途半端なまま止まります。
Vibe Consoleは、Claude CodeとCodexのクォータリングをノッチとターミナルのツールバーにリセット時刻つきで表示し、80%と100%で通知します。ウィンドウのしくみと、それに合わせた計画の立て方はClaude Codeの使用量上限ガイドで解説しています。
ステップ6:マージして後片付けする
タスクが終わったら、次の手順で進めます。
- ブランチのdiffをレビューする(ソース管理、⌘⇧G)。
- そのworktreeでテストを実行する。
- ブランチをマージし、worktreeを削除する(ソース管理のWorktree を削除、または
git worktree remove ../atlas-auth)。
エージェントは何個までが適切?
たいていの人にとって、実用的な上限はコードを書くエージェント2〜3個とレビュアー1個です。それ以上になると、ボトルネックはエージェントではなくレビューになります。並列のエージェントを増やすのは、独立していて仕様が明確で、テストもしっかりあるタスクだけにしましょう。
よくある質問
同じプロジェクトでClaude CodeとCodexを同時に動かせますか?
はい。両方がコードを変更するならそれぞれにworktreeを用意するか、片方を読み取り専用のレビュアー役にしてください。
並列のClaude Codeセッションはコンテキストを共有しますか?
いいえ。各セッションはそれぞれ独立した会話を持ちます。決めたことは、CLAUDE.md、AGENTS.md、プロジェクトのノートなど、エージェントが読むファイルを通じて共有してください。
エージェントを並列で動かすと費用は増えますか?
各エージェントが独立して使用量を消費するので、プランの上限を早く使うことになります。作業の総量はほぼ同じで、短い時間に集中するだけです。
さっそく試してみませんか?Vibe Consoleをダウンロードすれば14日間無料で使えます。
