Design with an elephant. Review with a goldfish.
Install · Quickstart · Documentation · Website
Thousands of Google engineers use EGM, an open-source plugin, to draft specs with deep-context agents and stress-test them with zero-context subagents before writing code.
Elephant holds your project context and drafts the specification. Goldfish reviewers examine the draft and referenced source material without the earlier conversation, helping expose unstated assumptions and blind spots. You make the architectural trade-offs and approve the specification before implementing.
Use it when a feature needs design decisions before implementation. For a small, clear bug fix, use your normal coding workflow.
Choose your coding agent. Install the complete plugin so its skills can read the reviewer prompts and document standards.
agy plugin install https://github.com/google/elephant-goldfish-modelclaude plugin marketplace add google/elephant-goldfish-model
claude plugin install egm@egmcodex plugin marketplace add google/elephant-goldfish-model
codex plugin add egm@egmStart a new session after installation. For Claude Cowork and ChatGPT Work, see the setup guide.
Open your project in your coding agent and choose a feature that needs design decisions. This example adds webhook delivery: what should happen when a delivery fails, or the same event arrives twice?
Use the commands below in Antigravity. In Claude Code, use the /egm: prefix, for example /egm:egm-brainstorm. In Codex, select the corresponding EGM skill from the skill picker. Brainstorming and review require a session that can create fresh subagents.
/egm-brainstorm Add webhook delivery to this project.
Discuss requirements and trade-offs with the agent. Fresh reviewers challenge the proposal, and the agent saves the agreed direction in concepts_brief.md.
/egm-draft
The agent turns the brief into design_draft.md, pausing after each section for your feedback in chat.
/egm-review design_draft.md
Use the draft path returned by the agent.
Fresh reviewers check the design, its clarity, its fit with the code, and its implementation plan. Choose which findings to address. When you approve the design, ask your coding agent to implement it.
See the workflow guide for the full process, including saving approved specifications under docs/designs/.
| Role | Context | Responsibility |
|---|---|---|
| Elephant | Your project, requirements, and earlier decisions | Explore the problem and draft the specification. |
| Goldfish | The document and its referenced source material, without the earlier conversation | Find missing assumptions, unclear requirements, and implementation risks. |
| You | The goals and constraints that matter | Resolve trade-offs, approve the design, and decide what to build. |
Goldfish reviews require fresh subagent contexts. If your agent cannot create them, EGM stops the review. A review does not replace tests or human judgment. See supported environments and verification limits.
You can use each skill when you need it. You do not have to follow the full sequence.
| Skill | Use it to… |
|---|---|
| Test an idea and write a concept brief. | |
| Turn a brief or existing notes into a design document. | |
| Work through review findings and agree on changes. | |
| Create or update documentation for an existing codebase. | |
| Review a design with fresh agents across five stages. | |
| Run a configured group of reviewers for a specific review task. | |
| Compare checked-in documents with the current source code. |
- Getting started: the workflow and project layout.
- Setup: installation, agent capabilities, and known limits.
- Architecture: how skills and reviewers fit together.
- Testing: checks, execution records, and verification limits.
- Dave Rensin’s original essay: the ideas behind EGM.
Read contributing for PRs, issues for bugs, and discussions for questions.
Apache 2.0. This is not an officially supported Google product.