◀ ガイドTOP 並列エージェント
対象中級者
達成目標並列エージェント運用
前提知識Ch.1-3完了
所要時間20分

並列エージェント

Agent Managerを使った最大5並列のエージェント実行。ワークスペース分離戦略でコード品質を維持しながら開発を加速。

並列エージェント概要

Google Antigravityは最大5つのエージェントを同時に実行できます。Agent Manager Viewを使えば、複数のエージェントに異なるタスクを割り当て、それぞれの進捗をリアルタイムで監視できます。

プラン別並列制限

プラン 最大並列数 Work Done/時間 推奨用途
Free 2 週次リセット 個人学習、小規模タスク
Pro ($20/月) 5 5時間ごとリセット 日常開発、中規模プロジェクト
Ultra ($249.99/月) 10 5時間ごとリセット(最大クォータ) チーム開発、大規模リファクタリング
📝 Note

並列数を増やすとWork Done消費が比例して増加します。Free プランで2タスク並列×30分 = 単独1時間分のクォータ消費と同等です。

並列エージェントの主なメリット:

📝 Note

並列エージェントはAntigravityのUltraプラン($249.99/月)で5並列まで利用可能です。Proプラン($20/月)では最大2並列に制限されます。無料プランでは並列実行は利用できません。

エージェントの起動

Manager Viewからエージェントを起動する手順です。

  1. Manager Viewを開く
    画面上部のタブから「Manager」を選択します。現在実行中のエージェント一覧が表示されます。初回は空の状態です。
  2. 新規エージェントを作成
    「+ New Agent」ボタンをクリックします。エージェント名、使用モデル、ワークスペースディレクトリを指定します。
  3. タスクを割り当てる
    テキストエリアにタスクの指示を入力します。具体的かつ明確な指示を心がけてください。曖昧な指示は品質低下の原因になります。
  4. 実行開始
    「Start」をクリックするとエージェントが動き始めます。Manager Viewで進捗状況をリアルタイムに確認できます。

効率的なタスク割り当て例

A

Agent 1: フロントエンド

「ユーザーダッシュボード画面をReactで実装してください。デザインはFigmaのリンクを参照。レスポンシブ対応必須。」

B

Agent 2: バックエンドAPI

「ダッシュボード用のREST APIを実装してください。GET /api/dashboard/stats, GET /api/dashboard/activity のエンドポイントを作成。」

C

Agent 3: テスト作成

「既存のユーザー認証モジュール(src/auth/)のユニットテストを作成してください。カバレッジ80%以上を目指す。」

✅ Tip

タスクの指示には「完了条件」を明記してください。例えば「テストが全てパスすること」「TypeScriptの型エラーが0であること」など。完了条件が明確だと、エージェントが自律的に品質を担保できます。

ワークスペース分離戦略

並列エージェントで最も重要なのがワークスペースの分離です。同じディレクトリで複数のエージェントを実行すると、深刻な問題が発生します。

同一フォルダでの並列実行リスク

⚠️ Warning

同一ディレクトリでの並列エージェント実行は、最も多い失敗パターンです。必ずワークスペースを分離してから並列実行してください。分離しない並列実行は、直列実行より遅くなることがほとんどです。

分離戦略の比較

戦略 方法 メリット デメリット
Git Worktree ブランチごとに作業ディレクトリ分離 ディスク効率が良い、Git標準機能 学習コストあり
ディレクトリコピー プロジェクトを丸ごとコピー シンプル、理解しやすい ディスク使用量大、node_modules重複
モノレポ内分離 パッケージ単位でエージェント割当 自然な分離、マージ不要 モノレポ構成が前提
機能ファイル分離 変更対象ファイルが重複しないよう設計 追加設定不要 完全分離が難しい場合が多い

監視と管理

Agent Manager Viewでは、各エージェントの状態をリアルタイムで監視できます。

ステータス表示

各エージェントは以下のステータスを持ちます:

ステータス 意味 アクション
Running タスク実行中 進捗を監視。必要に応じて追加指示を送信
Waiting 承認待ち(ファイル変更やコマンド実行の許可を求めている) 内容を確認し、承認または拒否
Completed タスク完了 Artifactsを確認し、成果物をレビュー
Error エラー発生で停止 エラーログを確認し、修正指示を送信
Paused 手動で一時停止 必要に応じて再開

Artifacts確認

各エージェントが生成した成果物(コード、設定ファイル、テスト結果など)は「Artifacts」タブで確認できます。差分表示機能を使えば、元のコードからの変更点をひと目で把握できます。

承認リクエスト対応

承認ポリシーが「Ask」に設定されている場合、エージェントはファイル変更やコマンド実行の前に承認を求めます。Manager Viewでは全エージェントの承認リクエストが一元表示されるため、効率的に対応できます。

✅ Tip

並列実行中は承認リクエストが頻繁に発生します。生産性を最大化するには、信頼できるタスク(テスト実行、リント、フォーマットなど)の自動承認を設定し、破壊的操作(ファイル削除、git push等)のみ手動承認にすることをお勧めします。

Git Worktree連携

Git Worktreeは並列エージェントとの相性が最も良い分離戦略です。1つのリポジトリから複数の作業ディレクトリを作成し、それぞれ異なるブランチで作業できます。

基本的なセットアップ

Terminal
# メインリポジトリ(通常の作業ディレクトリ) cd ~/projects/my-app # Agent 1用のworktreeを作成(feature/dashboardブランチ) git worktree add ../my-app-agent1 -b feature/dashboard # Agent 2用のworktreeを作成(feature/apiブランチ) git worktree add ../my-app-agent2 -b feature/api # Agent 3用のworktreeを作成(fix/auth-bugブランチ) git worktree add ../my-app-agent3 -b fix/auth-bug

これで以下の3つの独立した作業ディレクトリが作成されます:

各ワークディレクトリは同じGitオブジェクトデータベースを共有するため、ディスク使用量は最小限です。

Worktree管理コマンド

Terminal
# worktree一覧を確認 git worktree list # 作業完了後にworktreeを削除 git worktree remove ../my-app-agent1 # ブランチをmainにマージ git checkout main git merge feature/dashboard git merge feature/api git merge fix/auth-bug # 不要になったworktreeを一括削除 git worktree prune
⚠️ Warning

Git Worktreeでは同じブランチを複数のworktreeでチェックアウトできません。必ず各worktreeで異なるブランチを使用してください。ブランチ名の規約(例: agent/1/feature-name)を決めておくと管理が楽になります。

node_modulesの共有

Node.jsプロジェクトの場合、各worktreeで npm install を実行する必要があります。pnpmを使っている場合はコンテンツアドレッサブルストレージが自動的にキャッシュを共有するため、ディスク効率が良くなります。

初心者向けWorktreeセットアップ

  1. Step 1: メインブランチの確認
    git branch で現在のブランチを確認し、feature用ブランチを作成する準備をします。mainブランチが最新であることを git pull origin main で確認してください。
  2. Step 2: Worktree作成
    git worktree add ../project-agent-1 feature/refactor を実行します。これにより親ディレクトリに project-agent-1 フォルダが作成され、feature/refactor ブランチがチェックアウトされます。
  3. Step 3: Antigravityで新しいワークスペースとして開く
    Antigravityで ../project-agent-1 を新しいワークスペースとして開きます。Agent Manager Viewから「+ New Agent」で、ワークスペースディレクトリにこのパスを指定します。
  4. Step 4: 作業完了後のクリーンアップ
    git worktree remove ../project-agent-1 で不要になったworktreeを削除します。ブランチのマージはメインリポジトリ側で行ってください。
⚠️ Worktree使用時の注意

✅ 各worktreeに異なるブランチを割り当てる
✅ node_modulesはシンボリックリンクで共有可能
✖ 同じブランチを複数worktreeで開かない
✖ worktree内でgit checkout mainしない

ベストプラクティス

タスク粒度の設計

並列実行の効果を最大化するには、タスクの粒度が重要です。

粒度 並列向き度
大きすぎる 「アプリ全体をリファクタリングして」 不向き(コンテキスト枯渇のリスク)
適切 「認証モジュールのユニットテストを作成して」 最適(明確な範囲、独立性が高い)
小さすぎる 「変数名をcamelCaseに変えて」 不向き(オーバーヘッドが大きい)

独立性の確保

タスク別の並列化適性

タスクタイプ 並列化 理由
フロントエンド + バックエンド実装 ✅ 適 依存関係が少なく独立して作業可能
ユニットテスト + E2Eテスト作成 ✅ 適 テスト対象が異なり干渉しない
APIエンドポイント追加 × 3本 ✅ 適 ルートごとに独立
DB migration + それに依存するコード変更 ✖ 不適 順序依存性がある
同一ファイルの異なるセクション修正 ✖ 不適 マージコンフリクトが発生
グローバルCSS変更 + コンポーネント修正 ⚠️ 注意 スタイル競合の可能性

マージ戦略

1

最も安定した変更から先にマージ

テスト追加、ドキュメント更新など、コンフリクトリスクの低い変更を先にmainにマージします。基盤が安定してから、大きな機能変更をマージする順序がベストです。

2

PRベースのレビュー

各エージェントの成果をPull Requestとして提出し、人間がレビューしてからマージします。自動マージは避け、必ず差分を確認してください。

3

コンフリクト解決は別エージェントで

マージコンフリクトが発生した場合、新たにエージェントを起動して解決させます。コンフリクト解決の指示には両方のブランチの意図を明記してください。

✅ Tip

並列エージェントの理想的なパターンは「Fan-out / Fan-in」です。計画フェーズで全体設計を固め(Single Agent)、実装フェーズで並列展開し(Multi Agent)、統合フェーズで再び一本化する(Single Agent)。この3段階を意識するだけで、並列実行の成功率が大幅に向上します。