ツール比較 — Claude Code / Claude Desktop App / Antigravity CLI / Antigravity
同じ「マルチエージェントチーム」であっても、それを構築するツールが異なれば動作も制約も変わる | 公式ドキュメント: Claude Code, Antigravity CLI, Antigravity Agent Manager
claude --version · Antigravity CLI: agy --version またはセッション内 /usage · Antigravity Desktop: アプリの「バージョン情報」画面agy)がその後継となりました。本ハンドブックは当初Geminiコマンドラインインターフェース(CLI)を前提に執筆されていましたが、現在の日付をもってAntigravityコマンドラインインターフェース(CLI)に完全に更新されています。古い資料でgeminiコマンドや.gemini/agents/パスを見かけた場合は、後継バージョンに置き換えられたものとして扱ってください。4つのツールを一覧で把握する(Desktop優先、CLIは並列)
Anthropic family ├── Claude Desktop App ★ デフォルト GUIベース。サブエージェントは動作するが、フック/tmux並列実行は制限あり └── Claude Code (CLI) ターミナルベース。フック、Agent Teams、サブエージェントを完全サポート Google family ├── Antigravity (Desktop) ★ デフォルト スタンドアロンデスクトップアプリ。Agent Managerがワークスペースごとに並列実行を管理 └── Antigravity CLI (agy) ターミナルベース。Gemini CLIの後継 — オーケストレータが動的にサブエージェントを生成
1. Claude Desktop App vs Claude Code (CLI)
本ハンドブックではClaude Desktop Appをデフォルトの実習ツールとして扱います。GUIでサブエージェントを作成・呼び出す流れは同じなので、Claude Code (CLI)を使っても以下の内容をそのまま追体験できます。両ツールは同じClaudeエンジン上で動作しますが、実行環境が異なるため、マルチエージェントハーネスを構成する一部のメカニズムはCLIでのみ機能します。最も大きな違いは自動化フックとAgent Teamsの実行モードにあります。
Claude Desktop App(またはClaude Code)— .claude/agents/*.md サブエージェント
Claude Desktop Appは.claude/agents/*.mdファイルでカスタムサブエージェントを定義し、Agent/Taskツールで呼び出します。これはClaude Codeと全く同じです。ただし、.claude/settings.jsonで定義したPostToolUse/TeammateIdle/TaskCompletedフックはClaude Desktop Appでは発火しません。これらはCLIセッション内でのファイル保存やタスク完了などのイベントでのみ自動発火します。Claude Desktop Appを使用するチームは、セッション終了後にフックが実行するはずだった処理(監査スクリプトの実行など)を手動で行う必要があります。
この違いが引き起こす具体的な事故を考えてみましょう。チームがCLIにPostToolUseフックを設定し、「ファイルが保存されるたびにbun scripts/audit.tsが自動実行され、シークレット漏洩やルール違反を検知する」ようにしたとします。同じメンバーがClaude Desktop Appで全く同じ編集を行った場合、フックは一切発火しません。画面上ではCLIと全く同じ「ファイルが保存されました」と表示され、フックが実行されなかった兆候は見えません。その状態がコミットまで持ち込まれると、フックが検知するはずだった問題が静かにすり抜けてしまいます。本当の危険は「監査を実行し忘れた」ことではなく、「監査が実行されたと思い込んだ」ことなのです。
teammateMode — Claude Desktop Appはin-processのみ対応、Claude Codeはtmuxにも対応
Agent Teamsは実験的機能で、複数のClaudeインスタンスを並列起動します。Claude Desktop Appはin-processモードしか使用できません。これは同じプロセス内で並列化するもので、一部のキーボードナビゲーション(Shift+Downなど)が制限されます。ターミナル分割ペインを使用するtmuxモードは、Claude Code (CLI)でのみ追加サポートされています。
| 機能 | Claude Desktop App | Claude Code (CLI) |
|---|---|---|
Agent/Taskツールによるサブエージェントの呼び出し |
対応 | 対応 |
.claude/agents/*.mdによるカスタムサブエージェント |
対応 | 対応 |
| PostToolUse / TeammateIdle / TaskCompleted フック | 非対応(手動実行が必要) | 対応(自動発火) |
Agent Teams — teammateMode: in-process |
対応(一部ショートカット制限あり) | 対応 |
Agent Teams — teammateMode: tmux |
非対応 | 対応 |
teammateModeを明示的にin-processに設定する必要があります。チームのルールにも、フックが発火しない事実を反映させるべきです。自動監査が静かにスキップされたことを「合格」と見間違えないよう注意してください。2. Antigravity (Desktop) vs Antigravity CLI (agy)
Google側でも、本ハンドブックではAntigravity (Desktop)をデフォルトの実習ツールとして扱います。複数のワークスペースにわたる複数のエージェントを同時に管理するために、ゼロから設計されたスタンドアロンデスクトップアプリです。Antigravity CLI (agy)は同じプラットフォームのCLIフロントエンドで、単一のターミナルセッションが目標を受け取り、自律的にサブタスクに分割する構造になっています。両ツールは同じ設定フォルダ(~/.gemini配下のantigravity-cli/)も共有します。
ワークスペース · 受信トレイ · プレイグラウンド — Antigravity (Desktop) Agent Manager
AntigravityのAgent Managerは、1つの画面から複数のワークスペースを管理するトップレベルインターフェースです。原則として1つのワークスペースに1つのエージェントを割り当て、承認やフィードバックを要するメッセージは受信トレイに集まります。プレイグラウンドは、正式なワークスペースにコミットする前に軽く試せるスペースです。エージェントを起動する際、アクティブフォルダで直接作業するローカルモードと、分離されたgitワークツリーで作業する新規ワークツリーモードのどちらかを選択します。
Antigravity CLI (agy) スラッシュコマンド — /goal, /agent, /agents
Claude Code/Appが.claude/agents/*.mdなどのファイルでサブエージェントを事前定義するのに対し、Antigravityコマンドラインインターフェース(CLI)は、オーケストレータエージェントが目標を与えられた後にタスクの分割方法を自律的に決定し、サブエージェントをその場で生成して並列実行する仕組みです。各サブエージェントは独立したコンテキストウィンドウを持つため、メインセッションのコンテキストが希釈されることを防ぎます。
例えを使うと:Claude Code/Appは「あらかじめ雇われた常勤チームメンバーの名簿」で動くのに対し、Antigravityコマンドラインインターフェース(CLI)は「その場で来た仕事に応じてフリーランサーを雇う」ことに近いです。前者はチームメンバーが常に誰か分かっているため権限管理がしやすいですが、後者はその都度新しい才能を調達する柔軟性がある反面、「今回は正確に誰が参加したのか」を後から確認する手段が必要です。それが以下の/agentsの役割です。
Agent(Task)ツールも、自然言語のリクエストだけでその場でサブエージェントを生成し、その時点で必要なタスクを判断します(第1章 §3b)。Antigravity (Desktop)のAgent Managerも同様に、事前定義ファイルなしに自然言語で目標を与えることができます(§1)。本節で紹介する/goal・/agent・/agentsは、その同じ動的オーケストレーション能力をCLI画面のスラッシュコマンドで扱うための構文に過ぎません。Claude Code/Appはこの構文の代わりにチャット文で、Antigravity Desktopはこの構文の代わりにGUIボタン(受信トレイの承認、プレイグラウンドなど)で同じことを実現します。以下は、実際にagyで作業する際によく使う4つのCLI固有スラッシュコマンドです。下の表は「Antigravity CLIに固有の機能リスト」ではなく、「同じ能力のコマンドラインインターフェース(CLI)における名称」として読んでください。
| コマンド | 動作 |
|---|---|
agy | TUIセッションを開始します。 |
/goal <goal> | 目標を中間確認なしで完了まで実行します。オーケストレータがサブタスクを自律的に分割します。 |
/agent <task> | 長時間実行タスクをバックグラウンドエージェントに委譲し、完了を待たずに別のプロンプトに進めます。 |
/agents | これまでに生成されたサブエージェントの一覧と、実行中/完了/ブロック状態を表示します。 |
セッションを開始して目標を実行する実際の流れは以下の通りです。
agy
セッション内(インタラクティブ):
/goal Add a summary to every text file in this folder
CI/自動化のように、会話なしで単発実行したい場合(非インタラクティブ):
agy -p "Draft a commit message"
CLI側でも、セッションを分離しておく方が安全です。あるagyセッションがAPI層をリファクタリングしている間に別のセッションがテストを書いている場合、同じファイルに触れない限り競合しません。
3. マルチエージェント対応比較表
| 項目 | Claude Desktop App | Antigravity (Desktop) | Claude Code (CLI) | Antigravity CLI (agy) |
|---|---|---|---|---|
| 実行形態 | Desktop GUI | スタンドアロンデスクトップアプリ | ターミナルCLI | ターミナルCLI(単一コンパイル済みバイナリ) |
| サブエージェント定義方法 | .claude/agents/*.md(事前定義) |
(Agent Managerがワークスペースごとに運用。分離はワークスペース/プロジェクト単位で、個別のエージェント定義ファイルという概念ではない。) | .claude/agents/*.md(事前定義) |
オーケストレータが目標から動的に生成(事前定義不要) |
| サブエージェント呼び出し方法 | Agent/Taskツール |
Agent Managerがワークスペースごとにエージェントを作成 | Agent/Taskツール |
/goal(完了まで実行)またはデフォルトのステップバイステップ確認。/agentでバックグラウンド委譲 |
| 並列実行単位 | Agent Teams(in-processのみ) |
ワークスペースごとの独立エージェント(ローカルモード / 新規ワークツリーモード) | 1メッセージ内の複数Agent呼び出し / Agent Teams |
セッション内(オーケストレータが複数サブエージェントを並列実行)+ セッション間(複数ターミナル) |
| 非インタラクティブ/自動実行 | 非対応 | (該当なし。GUI中心。) | (スクリプトフックで対応) | agy -p "prompt"。1回実行して終了。CIに適している |
| 自動化フック | 非対応 | (該当なし) | 対応 | (フックの代わりにagy inspectでサブエージェントごとの実行ログを確認) |
| 実行中のサブエージェントへの追加メッセージ送信 | 単一Agent呼び出し: 不可(完了を待つ必要あり)/ Agent Teams: 可能(SendMessage) |
可能。受信トレイで承認/フィードバックメッセージをやり取りし、実行中のエージェントに介入できる | Claude Desktop Appと同じ。単一Agent呼び出しは不可。Agent TeamsはSendMessageで可能 |
/agentで委譲したバックグラウンドタスクの状態は確認(/agents)できるが、実行中に指示を変更する能力は限定的 |
| サブエージェント間の直接通信 | 単一Agent呼び出し: 不可(メインセッション経由)/ Agent Teams: 可能(チームメイト同士がSendMessageで通信) |
不可。ワークスペース(エージェント)は意図的に相互に分離されている(§2の「認知的オーバーラップ」警告参照)。通信は常に人間を経由 | Claude Desktop Appと同じ | 不可。動的に生成されたサブエージェントの結果はオーケストレータを通じてのみ集約。サブエージェント同士は直接通信しない |
Desktop-first guidance Full CLI parity support Many experimental features
Agent(Task)呼び出しとAntigravityコマンドラインインターフェース(CLI)の動的サブエージェントは前者に近いです。一度生成されると最後まで単独で処理し、要約だけを返すため、途中で新しい指示を出したり別のサブエージェントと会話したりする手段はありません。対照的にClaude Code/AppのAgent Teamsは後者です。各チームメイトはSendMessageで別のメンバーに直接メッセージを送信できます(第2章 §1のP-1演習で既に扱いました)。Antigravity (Desktop)はエージェント間通信を全くサポートしませんが、代わりに受信トレイを通じて人間が各実行中エージェントと個別に会話できます。これが他の3つのツールとの違いです。4. 本ハンドブックでどのツールを選ぶべきか
本ハンドブックはClaude Desktop AppとAntigravity (Desktop)をデフォルトの実習ツールとして案内します。GUIから始める方が導入のハードルが低いためです。第2章でもまずこれら2つのDesktopツールを示し、直後にClaude Code (CLI)・Antigravity CLI (agy)の手順を並べて紹介します。1つのツールだけを選んで追うことも、4つすべてを比較しながら練習することもできます。以下の基準で選びやすくなります。
- まずはGUIで感触をつかみたい場合。Claude Desktop AppまたはAntigravity (Desktop)から始めてください。これが本ハンドブックのデフォルトレベルです。
- 複数の異なるプロジェクトを同時に管理したい場合。Antigravity (Desktop)のAgent Manager(ワークスペースごとの分離)はまさにこのシナリオのために設計されています。
- フックベースの自動化(監査/QAゲート)が必要な場合。Claude Code (CLI)に移行してください。Claude Desktop AppとAntigravity系には対応する自動フックがありません。
- サブエージェントを一つ一つ定義せず、オーケストレータに自律的に分割させたい場合。Antigravity CLI (
agy)は目標から動的にサブエージェントを生成します。ただし、きめ細かな制御はやや限定的です。
💡 重要ポイント: 4つのツールはすべて同じ基本ハーネスエンジニアリング構造を共有しています。「サブエージェントに狭い役割を与え、オーケストレータがそれらを調整する」。変わるのは、その構造が載る実行環境(CLI/GUI、フックの有無、サブエージェントが事前定義か動的生成か)です。
5. AGENTS.md — 4つのツールを結びつける
これまで比較してきたフック、並列実行、サブエージェント定義の方法はツールごとに異なりますが、リポジトリルートの設定は1つに統一できます。AGENTS.mdは2025年8月にOpenAIがGoogle、Cursor、Factoryと共同で作成し、2025年12月にLinux FoundationのAgentic AI Foundationに寄贈したオープン標準です。Codex、Cursor、GitHub Copilot、Google Julesなど30以上のツールでサポートされており、Claude Code(インポート経由)とAntigravity系も対応しています。
リポジトリルートに単一のAGENTS.mdを配置すると、4つのツールすべてがセッション開始時にそれを読み込み、ビルド/テストコマンド、コードスタイル、立ち入り禁止エリアなどの共通ルールを共有できます。ツール固有の動作(フック、teammateMode、サブエージェント定義場所など)は、上の比較表にある通り、CLAUDE.mdやGEMINI.mdなどのツール固有ファイルに別途記録されます。AGENTS.mdが共通部分を扱い、ツール固有ファイルが差分を扱う構造です。
| ファイル | 役割 | 読み込むツール |
|---|---|---|
AGENTS.md |
ツール中立の共通ルール(ビルド/テストコマンド、コードスタイル、立ち入り禁止エリア) | Claude Code (インポート) · Antigravity系 · Codex · Cursor · Copilot 他30以上 |
CLAUDE.md |
Claude Code/App固有の詳細動作(フック、スラッシュコマンド、エージェントディスパッチルール) | Claude Code、Claude Desktop App |
GEMINI.md |
Antigravity CLI/Desktop固有の詳細動作 | Antigravity CLI、Antigravity (Desktop) |
💡 重要ポイント: 第5章 §1で紹介したai-workspace-standardsリポジトリはまさにこの構造を実装しています。ルートのAGENTS.mdがエージェント名簿の単一情報源(SSOT)として機能し、.agents/フォルダが.claude/・.gemini/と並んでツール非依存のコマンドとスキルを保持しています。
参考リンク
- 📖 Claude Code — 公式サブエージェントドキュメント
- 📖 Antigravity CLI — 公式入門ドキュメント
- 📖 Antigravity CLI — 公式AGY CLI使用ドキュメント
- 📖 Antigravity — 公式Agent Managerドキュメント
- 📖 AGENTS.md — 公式オープン標準サイト
Claude Code 2026-08 / Antigravity CLI 1.1.0+ / Antigravity 2.0 | 2026年8月
参考動画
- ENGemini CLI vs Claude Code vs Codex Compared! — 3つのAI CLIツールの主要機能を比較分析
- ENClaude Code vs Gemini CLI vs Codex: Which One is Best? — 実際の操作比較とツール選択の基準
- JA【徹底比較】Claude Code vs Codex vs Cursor|AIコーディング御三家の正しい選び方 — AIコーディングツール3世代進化と正しい選び方を解説