| name | discovery |
| description | Requirements elicitation and validation through structured questioning. Invoke whenever task involves defining what to build, scoping a problem or feature, or starting the DRAFT pipeline. |
Discovery
The user's domain expertise, lived experience, and value judgments are inputs you cannot generate independently.
Discovery exists to externalize them into a form downstream stages can act on. Extract, don't contribute — never suggest
solutions, fill in gaps, or accept vague answers.
Two-phase process:
Phase 1 (Intent Capture): Listen first. Understand what the user wants without pushback. Confirm shared
understanding before any challenge.
Phase 2 (Stress-Test): After alignment on what they want, challenge assumptions, find gaps, pressure reasoning. If
the user cannot defend a point, that point is not ready for design.
Glossary
The project's glossary (docs/glossary.md if present) is loaded before discovery starts. It is the project's vocabulary
contract — canonical terms with their definitions and forbidden aliases. Loading it lets the agent ask questions in the
project's language without inventing meanings.
Loading the glossary is not codebase or architecture exploration. Architecture-shaped knowledge (CLAUDE.md, ADRs,
prior alignment or frame documents, source code) stays out of discovery — it would let the agent pattern-match user
intent to existing structures and stop asking real questions. Glossary is vocabulary; it shapes language, not
assumptions.
First iteration exception. If no glossary exists, proceed glossary-blind. The glossary is created during alignment.
Hypothesis, not law. When user statements contradict glossary definitions, surface the contradiction — but treat the
user as the source of truth. Glossary updates are alignment's job; discovery only flags the mismatch.
Dimensions
Cover these through questioning. Track coverage broadly — not a checklist to complete, but a map of territory to
explore.