共通参考

ツール比較 — Claude Code / Claude Desktop App / Antigravity CLI / Antigravity / Codex CLI / Codex Desktop App

同じ「マルチエージェントチーム」であっても、それを構築するツールが異なれば動作も制約も変わる | 公式ドキュメント: Claude Code, Antigravity CLI, Antigravity Agent Manager, Codex

対象バージョンClaude Code 2026-09 / Antigravity CLI (agy) 1.1.0+ / Antigravity 2.0 / Codex CLI·Desktop App
ドキュメント収集日2026-09-12
バージョン確認方法Claude Code: claude --version · Antigravity CLI: agy --version またはセッション内 /usage · Antigravity Desktop: アプリの「バージョン情報」画面 · Codex CLI: codex --version · Codex Desktop App: アプリの「バージョン情報」画面
改訂時に再確認すべき点各ツールの実験的機能ラベルが安定版に昇格したか、デスクトップアプリの未対応フック範囲が縮小したか、Codexにネイティブなサブエージェントツールが追加されたか
Google系ではGemini CLIとAntigravity CLI (agy)/デスクトップの両方がサポートされています。本ハンドブックのGoogle系実習とツール比較はAntigravity CLI/デスクトップを基準としています。Gemini CLIはworkspaceのGEMINI.mdガイダンス、.gemini/の設定・コマンド・スキル、フック(BeforeTool/AfterTool)により引き続きサポートされているため、資料内でgeminiコマンドや.gemini/パスを見かけても、過去のバージョンとは見なさないでください。

6つのツールを一覧で把握する(Desktop優先、CLIは並列)

Anthropic family
├── Claude Desktop App ★ デフォルト     GUIベース。サブエージェントは動作するが、フック/tmux並列実行は制限あり
└── Claude Code (CLI)               ターミナルベース。フック、Agent Teams、サブエージェントを完全サポート

Google family
├── Antigravity (Desktop) ★ デフォルト    スタンドアロンデスクトップアプリ。Agent Managerがワークスペースごとに並列実行を管理
└── Antigravity CLI (agy)           ターミナルベース — オーケストレータが動的にサブエージェントを生成

OpenAI family
├── Codex Desktop App              GUIベース。ネイティブなサブエージェントツールなし — PMが順次実行で役割を代行
└── Codex 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 AppClaude Code (CLI)
Agent/Taskツールによるサブエージェントの呼び出し 対応 対応
.claude/agents/*.mdによるカスタムサブエージェント 対応 対応
PostToolUse / TeammateIdle / TaskCompleted フック 非対応(手動実行が必要) 対応(自動発火)
Agent Teams — teammateMode: in-process 対応(一部ショートカット制限あり) 対応
Agent Teams — teammateMode: tmux 非対応 対応
Desktop AppでAgent Teamsを使用するには、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ワークツリーで作業する新規ワークツリーモードのどちらかを選択します。

同じワークスペース(同じフォルダ)に複数のエージェントを同時に割り当てることは可能ですが、異なるエージェントがコードベースのコンテキストを混同・混入させるという実際の報告があります(「認知的オーバーラップ」)。並列作業はワークスペースまたはgitワークツリーで分離する方が安全です。

Antigravity CLI (agy) スラッシュコマンド — /goal, /agent, /agents

Claude Code/Appが.claude/agents/*.mdなどのファイルでサブエージェントを事前定義するのに対し、Antigravityコマンドラインインターフェース(CLI)は、オーケストレータエージェントが目標を与えられた後にタスクの分割方法を自律的に決定し、サブエージェントをその場で生成して並列実行する仕組みです。各サブエージェントは独立したコンテキストウィンドウを持つため、メインセッションのコンテキストが希釈されることを防ぎます。

例えを使うと:Claude Code/Appは「あらかじめ雇われた常勤チームメンバーの名簿」で動くのに対し、Antigravityコマンドラインインターフェース(CLI)は「その場で来た仕事に応じてフリーランサーを雇う」ことに近いです。前者はチームメンバーが常に誰か分かっているため権限管理がしやすいですが、後者はその都度新しい才能を調達する柔軟性がある反面、「今回は正確に誰が参加したのか」を後から確認する手段が必要です。それが以下の/agentsの役割です。

ここで注目すべき点:サブエージェントを動的に生成する機能はAntigravity CLIに固有ではありません。Claude Code/Appの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)における名称」として読んでください。

コマンド動作
agyTUIセッションを開始します。
/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. Codex Desktop App vs Codex CLI

OpenAI陣営はCodexです。Codex Desktop AppとCodex CLIはどちらもリポジトリルートのCODEX.mdを読み込んで行動指針に従いますが、前述の4ツールと構造的に異なる点が一つあります — Codexにはネイティブなサブエージェントツールがありません。 Claude系のAgent/Taskツールや、Antigravity系の動的サブエージェント生成に相当する機能がCodexには存在しないため、複数の専門エージェントをオーケストレーションするハーネスパターンそのものを別の方法で実装する必要があります。

サブエージェントがないなら — PMが直接順次実行する

Codexでは、PM(オーケストレータ)の役割は、各専門エージェントの定義ファイル(agents/<name>.md)を役割コンテキストとして直接読み込んだ後、同じセッション内でその役割が担う作業を順番にこなすことで果たされます。別プロセスやサブエージェントをスポーンするのではなく、PM自身が「今は設計エージェントのように考え、次は実装エージェントのように考える」という具合に役割を着替えながら段階を踏みます。並列実行や独立したコンテキストウィンドウの分離はなく、すべての段階が一つの線形セッション内で行われます。

例えるなら、Claude Code/Appは「業務ごとに違う社員を呼ぶ」方式、Antigravity CLIは「その都度フリーランサーを調達する」方式だとすれば、Codexは「一人がマニュアルを切り替えながら複数の役割を一人でこなす」方式です。役割切り替えのオーバーヘッドはありませんが、本当の並列実行や役割間の直接コミュニケーション(SendMessageなど)は最初から不可能です。

フックがないなら — プロンプトで自己強制する

Codexはワークスペースのフックスイートを実行しません。Claude CodeのPostToolUse/TeammateIdle/TaskCompletedのような自動発火イベントに対応する仕組みがないため、監査スクリプトの実行やゲートルールといったガバナンスは、CODEX.mdに明記された指針をPMが毎セッション自ら認識して実行する方式(プロンプト自己強制)で代替します。これはAntigravity Desktopがフックなしでこの隙間をGUIで埋めるのとはまた違う方式です — Antigravityは「その機能自体がない」のに対し、Codexは「機能は必要だがフックの代わりにプロンプト指針で実装する」という違いがあります。

機能Codex Desktop AppCodex CLI
ネイティブなサブエージェントツール 未対応 — PMがagents/<name>.mdを役割コンテキストとして読み込み、セッション内で順次実行 同じ(Desktop Appと構造上の違いなし)
自動化フック(PostToolUseなど) 未対応 — ガバナンスはCODEX.mdのプロンプトで自己強制 未対応(同じ)
並列実行 未対応(単一の線形セッション) 複数のターミナルを開けばセッション間並列は可能 — セッション内並列は未対応
設定/スキルの場所 .codex/skills/、.codex/prompts/、.codex/config.toml 同じ
Codexで本ハンドブックのマルチエージェント実習に取り組む際は、「サブエージェントを呼び出す」という表現を「PMが該当する役割の定義ファイルを読み込み、その役割を遂行する」と読み替えてください。成果物は同じように作れますが、実行モデルが根本的に異なるため、Agent Teams・SendMessageのように実行中に別のサブエージェントと通信する実習はCodexではそのまま再現できません。

4. マルチエージェント対応比較表

項目Claude Desktop AppAntigravity (Desktop)Claude Code (CLI)Antigravity CLI (agy)Codex (Desktop/CLI)
実行形態 Desktop GUI スタンドアロンデスクトップアプリ ターミナルCLI ターミナルCLI(単一コンパイル済みバイナリ) Desktop GUI / ターミナルCLI(構造上の違いなし)
サブエージェント定義方法 .claude/agents/*.md(事前定義) (Agent Managerがワークスペースごとに運用。分離はワークスペース/プロジェクト単位で、個別のエージェント定義ファイルという概念ではない。) .claude/agents/*.md(事前定義) オーケストレータが目標から動的に生成(事前定義不要) ネイティブなサブエージェントツールなし — PMがagents/<name>.mdを役割コンテキストとして読み込む
サブエージェント呼び出し方法 Agent/Taskツール Agent Managerがワークスペースごとにエージェントを作成 Agent/Taskツール /goal(完了まで実行)またはデフォルトのステップバイステップ確認。/agentでバックグラウンド委譲 なし — PMがセッション内で役割を切り替えながら順次実行
並列実行単位 Agent Teams(in-processのみ) ワークスペースごとの独立エージェント(ローカルモード / 新規ワークツリーモード) 1メッセージ内の複数Agent呼び出し / Agent Teams セッション内(オーケストレータが複数サブエージェントを並列実行)+ セッション間(複数ターミナル) セッション内並列なし — 複数のターミナル/ウィンドウによるセッション間並列のみ
非インタラクティブ/自動実行 非対応 (該当なし。GUI中心。) (スクリプトフックで対応) agy -p "prompt"。1回実行して終了。CIに適している (フック機構自体がない — CODEX.mdのプロンプトで自己強制)
自動化フック 非対応 (該当なし) 対応 (フックの代わりにagy inspectでサブエージェントごとの実行ログを確認) 非対応 — ワークスペースのフックスイートを一切実行しない
実行中のサブエージェントへの追加メッセージ送信 単一Agent呼び出し: 不可(完了を待つ必要あり)/ Agent Teams: 可能(SendMessage) 可能。受信トレイで承認/フィードバックメッセージをやり取りし、実行中のエージェントに介入できる Claude Desktop Appと同じ。単一Agent呼び出しは不可。Agent TeamsはSendMessageで可能 /agentで委譲したバックグラウンドタスクの状態は確認(/agents)できるが、実行中に指示を変更する能力は限定的 該当なし — そもそもサブエージェントが存在しない
サブエージェント間の直接通信 単一Agent呼び出し: 不可(メインセッション経由)/ Agent Teams: 可能(チームメイト同士がSendMessageで通信) 不可。ワークスペース(エージェント)は意図的に相互に分離されている(§2の「認知的オーバーラップ」警告参照)。通信は常に人間を経由 Claude Desktop Appと同じ 不可。動的に生成されたサブエージェントの結果はオーケストレータを通じてのみ集約。サブエージェント同士は直接通信しない 該当なし — すべての「役割」は一つのPMセッション内で順に起こる

Desktop-first guidance Full CLI parity support Many experimental features

上の2行を分ける基準が1つあります。サブエージェントは「委譲して結果を一度だけ返すワンショット呼び出し」か、「存続し続けるチームメイト的な存在」か? Claude Code/Appの単一Agent(Task)呼び出しとAntigravityコマンドラインインターフェース(CLI)の動的サブエージェントは前者に近いです。一度生成されると最後まで単独で処理し、要約だけを返すため、途中で新しい指示を出したり別のサブエージェントと会話したりする手段はありません。対照的にClaude Code/AppのAgent Teamsは後者です。各チームメイトはSendMessageで別のメンバーに直接メッセージを送信できます(第2章 §1のP-1演習で既に扱いました)。Antigravity (Desktop)はエージェント間通信を全くサポートしませんが、代わりに受信トレイを通じて人間が各実行中エージェントと個別に会話できます。これが他の3つのツールとの違いです。Codexはこのスペクトラムの外にあります — そもそもサブエージェントという概念自体がないため、「ワンショット」か「チームメイト」かを論じる対象がありません。

5. 本ハンドブックでどのツールを選ぶべきか

本ハンドブックはClaude Desktop AppとAntigravity (Desktop)をデフォルトの実習ツールとして案内します。GUIから始める方が導入のハードルが低いためです。第2章でもまずこれら2つのDesktopツールを示し、直後にClaude Code (CLI)・Antigravity CLI (agy)の手順を並べて紹介し、Codex (Desktop/CLI)に切り替える際の違いは§3を参照して読み替えます。1つのツールだけを選んで追うことも、複数を比較しながら練習することもできます。以下の基準で選びやすくなります。

  1. まずはGUIで感触をつかみたい場合。Claude Desktop AppまたはAntigravity (Desktop)から始めてください。これが本ハンドブックのデフォルトレベルです。
  2. 複数の異なるプロジェクトを同時に管理したい場合。Antigravity (Desktop)のAgent Manager(ワークスペースごとの分離)はまさにこのシナリオのために設計されています。
  3. フックベースの自動化(監査/QAゲート)が必要な場合。Claude Code (CLI)に移行してください。Claude Desktop AppとAntigravity・Codex系には対応する自動フックがありません。
  4. サブエージェントを一つ一つ定義せず、オーケストレータに自律的に分割させたい場合。Antigravity CLI (agy)は目標から動的にサブエージェントを生成します。ただし、きめ細かな制御はやや限定的です。
  5. すでにCodexの契約・環境があり、そのまま使いたい場合。Codex (Desktop/CLI)で実習できます。ただし、サブエージェント・並列実行・フックに依存する実習(Agent Teams、SendMessageなど)は、§3で説明した順次-役割-切り替え方式に読み替えてください。
ツール選択 意思決定フロー CLIは 必要ですか? 開始 Yes Claude Code Pro · フック対応 Antigravity CLI 実験的 · 動的エージェント No Claude Desktop App Pro · GUI標準 Antigravity 実験的 · Agent Manager チーム単位の 並列は必要ですか? Yes Agent Teams (Claude) Agent Manager (Antigravity) Claude系 Antigravity系 意思決定ノード 実行環境の選択 並列実行の要否

上の意思決定フローはClaude/Antigravity系4ツールの選択基準を示しています。Codex (Desktop/CLI)にはこの図に乗せるサブエージェント・フックの軸自体がありません — 「すでにCodex環境があるか」が事実上唯一の判断基準であり、あるなら§3を参照して順次-役割-切り替え方式に読み替えてください。

💡 重要ポイント: 6つのツールはすべて同じ基本ハーネスエンジニアリング構造を共有しています。「狭い役割を与え、オーケストレータがそれらを調整する」。変わるのは、その構造が載る実行環境(CLI/GUI、フックの有無、サブエージェントが事前定義・動的生成・そもそも存在しないかのいずれか)です。


6. AGENTS.md — 6つのツールを結びつける

これまで比較してきたフック、並列実行、サブエージェント定義の方法はツールごとに異なりますが、リポジトリルートの設定は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系も対応しています。興味深いことに、Codexはこの標準を共同で作成した当事者そのものです — CodexはAGENTS.mdをネイティブに読み込み、その上にツール固有の指針を記したCODEX.mdを重ねます。

リポジトリルートに単一のAGENTS.mdを配置すると、6つのツールすべてがセッション開始時にそれを読み込み、ビルド/テストコマンド、コードスタイル、立ち入り禁止エリアなどの共通ルールを共有できます。ツール固有の動作(フック、teammateMode、サブエージェント定義場所など)は、上の比較表にある通り、CLAUDE.md・GEMINI.md・CODEX.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)
CODEX.md Codex CLI/Desktop App固有の詳細動作 — ネイティブなサブエージェントがないためPM順次実行方式、フックの代わりにプロンプト自己強制ルールを記す Codex CLI、Codex Desktop App

💡 重要ポイント: 第7章 §1で紹介したai-workspace-standardsリポジトリはまさにこの構造を実装しています。ルートのAGENTS.mdがエージェント名簿の単一情報源(SSOT)として機能し、.agents/フォルダが.claude/・.gemini/・.codex/と並んでツール非依存のコマンドとスキルを保持しています。


参考リンク


Claude Code 2026-09 / Antigravity CLI 1.1.0+ / Antigravity 2.0 / Codex CLI・Desktop App | 2026年9月

参考動画