Elephant-Goldfish Model 調査レポート
1. 基本情報
- ツール名: Elephant-Goldfish Model (EGM)
- ツールの読み方: エレファント・ゴールドフィッシュ・モデル / EGM
- 開発元: Google (オープンソースとして提供)
- 公式サイト: https://egm.dev/
- 関連リンク:
- カテゴリ: AI開発ワークフロー
- 概要: LLMを活用した仕様駆動開発(Spec-driven development)のためのオープンソースのメソッドおよびプラグイン(スキルセット)。コーディング前にAIと仕様を設計・レビューすることで、実装のブラインドスポットを早期に発見します。
2. 目的と主な利用シーン
- 解決する課題: コードを書き始める前に、要件の抜け漏れや暗黙の前提、設計のトレードオフなどのブラインドスポットを発見し、手戻りを減らすこと。
- 想定利用者: ソフトウェアエンジニア、アーキテクト、開発チーム。
- 利用シーン:
- 新機能の要件定義やアーキテクチャ設計。
- 既存システムのドキュメント更新やリバースエンジニアリング。
- 設計文書に対する多角的な観点からの自動レビュー(ストレステスト)。
3. 主要機能
- Brainstorm (
/egm-brainstorm): 開発者と対話してアイデアを深掘りし、システムのコンセプトや要件をまとめた「コンセプトブリーフ」を作成する機能。 - Draft (
/egm-draft): コンセプトブリーフや既存のメモを基に、より詳細な設計ドキュメント(Design doc)をセクションごとに作成する機能。 - Review (
/egm-review): ゼロコンテキストのサブエージェント(Goldfish)を利用して、ドラフトを複数の観点(明確さ、完全性、実装の妥当性など)からレビューする機能。 - Resolve (
/egm-resolve): レビュー結果を受け、修正案の検討やドキュメントの更新に合意するための支援機能。 - Bootstrap (
/egm-bootstrap): 既存のコードベースからドキュメントを新規作成・更新する機能。 - Drift Report (
/egm-drift-report): チェックインされたドキュメント(設計書)と現在のソースコードを比較し、乖離している部分を報告する機能。
4. 動作原理・システム構成
- アーキテクチャ: プラグインとして動作し、マルチエージェント(親エージェントとサブエージェント)を活用したローカル環境(またはAIエディタのセッション内)での連携処理。
- 主要コンポーネントとデータフロー:
- Elephant(深いコンテキスト): リポジトリ全体の履歴、アーキテクチャ、コンポーネント境界などを把握するメインエージェント。起案やブレインストーミングを担当。
- Goldfish(ゼロコンテキスト): 過去の対話履歴を持たない独立したサブエージェント群。設計書と参照元のソースコードのみを読み込み、先入観なしにレビューを実行する。
- ユーザーはElephantを通じて設計を進め、Goldfishによるレビュー結果をフィードバックとして受け取り、最終的な意思決定を行う。
- 特筆すべき要素技術:
- Claude Code, Codex, Antigravity などのAIコーディングエージェントへの拡張プラグインとして実装されている。
- 対話文脈を意図的に切り離す「Context Engineering」の手法を採用している。
5. 開始手順・セットアップ
- 前提条件:
- Claude Code、Codex、Antigravity のいずれかのコーディングエージェントが導入されていること。
-
インストール/導入:
# Claude Codeの場合 claude plugin marketplace add google/elephant-goldfish-model claude plugin install egm@egm# Codexの場合 codex plugin marketplace add google/elephant-goldfish-model codex plugin add egm@egm - 初期設定:
- インストール後、新しいセッションを開始する。
- クイックスタート:
- プロジェクトを開き、ターミナルで
/egm-brainstorm Add webhook delivery to this project.のように入力してアイデアのブレインストーミングを開始する。
- プロジェクトを開き、ターミナルで
6. 特徴・強み (Pros)
- 役割を分けたマルチエージェント設計: 知識を保持する設計者(Elephant)と、知識を持たないレビュアー(Goldfish)を意図的に分けることで、人間が陥りがちな「暗黙の前提」を効果的に指摘できる。
- 仕様駆動のアプローチ: コード生成に飛びつく前に「何をどう作るか」をドキュメント化させるため、大規模な機能開発での手戻りを防げる。
- 既存ツールへの統合: Claude Codeなどの主要なAIコーディングエージェントのプラグインとして動作するため、ワークフローへの組み込みが容易。
7. 弱み・注意点 (Cons)
- 小規模な修正には不向き: 明確なバグ修正や小さな変更に対してはオーバースペックであり、通常のコーディングワークフローの方が適している。
- 対応エージェントの制限: 現在は特定のAIコーディングエージェント(Claude Code、Codex等)に依存しており、単体ツールとして稼働するわけではない。
- サブエージェント生成の要件: Goldfishレビューを行うには、セッションがクリーンなサブエージェントを生成できる能力(フレッシュなコンテキストの作成)を持っている必要がある。
8. 料金プラン
| プラン名 | 料金 | 主な特徴 |
|---|---|---|
| オープンソース | 無料 | GitHub上でApache 2.0ライセンスにて公開。すべてのスキルセットが利用可能。 |
- 課金体系: プラグイン自体は無料。ただし、連携するAIモデル(Claude等)のAPI利用料やサブスクリプション費用は別途発生する。
9. 導入実績・事例
- 導入企業: Google社内の数千人のエンジニアが利用。
- 導入事例: AIを用いたコーディングにおいて、実装前の仕様確認とブラインドスポットの発見に活用されている。
10. サポート体制
- ドキュメント: GitHubリポジトリ内に
docs/として提供されており、Getting Startedやアーキテクチャの解説が含まれる。 - コミュニティ: GitHub DiscussionsやIssuesを通じてやり取りが可能。
- 公式サポート: Googleの公式サポート製品ではなく、オープンソースプロジェクトとしてのコミュニティベースのサポートとなる。
11. エコシステムと連携
11.1 API・外部サービス連携
- API: ツール自体はプラグインとして提供されているため、外部向けAPIは公開していない。
- 外部サービス連携: Antigravity, Claude Code, Codex などのAIエージェントプラットフォームと密接に連携する。
11.2 技術スタックとの相性
| 技術スタック | 相性 | メリット・推奨理由 | 懸念点・注意点 |
|---|---|---|---|
| Claude Code | ◎ | プラグインとして公式サポート。 | 特になし |
| Codex | ◎ | プラグインとして公式サポート。 | 特になし |
12. セキュリティとコンプライアンス
- 認証: プラグインとして動作するため、ベースとなるAIエージェントの認証に依存する。
- データ管理: 基本的にローカル環境のファイルやAIエージェントのセッション内でデータが処理される。
- 準拠規格: オープンソースプロジェクトとしての提供(Apache 2.0)。特定のコンプライアンス認証への準拠は明記されていない。
13. 操作性 (UI/UX) と学習コスト
- UI/UX: CLIベースのチャットインターフェース。コマンド(
/egm-brainstormなど)を通じて操作を行う。 - 学習コスト: コンセプト(ElephantとGoldfishの役割の違い)を理解すれば、操作自体は対話形式のため低コスト。ただし、効果的なプロンプトやフィードバックを与えるスキルは必要。
14. ベストプラクティス
- 効果的な活用法 (Modern Practices):
- 実装前の設計フェーズで利用する。特に、アーキテクチャのトレードオフが発生する新規機能の開発に最適。
- 定期的に
/egm-drift-reportを実行し、設計ドキュメントと実装の乖離を防ぐ。
- 陥りやすい罠 (Antipatterns):
- 小さなバグ修正や明白なタスクにEGMを使用すること(時間の無駄になる)。
- Goldfishのレビュー結果を盲信すること。最終的な意思決定とトレードオフの解決は開発者(人間)が行う必要がある。
15. ユーザーの声(レビュー分析)
- 調査対象: GitHub, 公式ブログ, X(Twitter)
- 総合評価: レビューサイトでのスコア登録はなし(オープンソースツールのため)。
- ポジティブな評価:
- 「コーディング前にAIに設計をレビューさせることで、見落としていたエッジケースに気づけた。」
- 「文脈を切り離したレビューというアプローチは理にかなっている。」
- ネガティブな評価 / 改善要望:
- 「セットアップや依存するエージェント環境の構築がやや手間に感じる場合がある。」
16. 直近半年のアップデート情報
- 2026-05-18: 初回リリース(リポジトリの公開)。
(出典: GitHub Repository )
17. 類似ツールとの比較
17.1 機能比較表 (星取表)
| 機能カテゴリ | 機能項目 | 本ツール | Claude Code | GitHub Copilot |
|---|---|---|---|---|
| 基本機能 | 仕様駆動設計 | ◎ 専用メソッドとプラグイン |
◯ プロンプト次第で可能 |
△ 実装支援がメイン |
| カテゴリ特定 | ゼロコンテキストレビュー | ◎ Goldfishサブエージェント |
△ 別セッションを手動で作成 |
× 非対応 |
| ドキュメント | 実装との乖離チェック | ◯ Drift Report機能 |
△ 手動での指示が必要 |
× 非対応 |
17.2 詳細比較
| ツール名 | 特徴 | 強み | 弱み | 選択肢となるケース |
|---|---|---|---|---|
| 本ツール | AIを用いた仕様駆動開発メソッド | 意図的に文脈を切り離したレビューによる客観性の担保 | 既存のコーディングエージェントに依存する | 複雑な機能の設計・仕様策定を行う場合 |
| Claude Code | 高度な推論力を持つAIコーディングエージェント | リポジトリ全体の文脈理解と高いコーディング能力 | ゼロコンテキストでの客観的レビューには工夫が必要 | EGMの基盤ツールとして、または通常の実装作業に |
18. 総評
- 総合的な評価:
- Elephant-Goldfish Modelは、AIコーディングアシスタントが普及する中で、「実装」の前に「設計・仕様策定」を堅牢にするための非常にユニークかつ実践的なフレームワークです。意図的に情報を遮断したエージェント(Goldfish)を用いてブラインドスポットを発見するアプローチは、LLMの特性を深く理解した有用な手法と言えます。
- 推奨されるチームやプロジェクト:
- アーキテクチャのトレードオフが頻繁に発生する中規模〜大規模プロジェクト。
- ドキュメントドリブンで開発を進めたいチーム。
- 選択時のポイント:
- 単体のツールではなく、Claude CodeやCodexなどの既存ツールを拡張するワークフロー/メソッドである点を理解した上で、チームの開発プロセスにフィットするかどうかを検討する必要があります。