brief
Feature: $ARGUMENTS
Ground it first (silently)
- Read the repo's CLAUDE.md and the memory entries for this project. Skim the routes, schema and email templates the feature touches. Specs cite real file paths and existing fields.
- Interview only if a decision would change the scope. Ask one question at a time using AskUserQuestion with a recommended option, and keep it to 3 questions at most. Anything else becomes an assumption in Open questions.
House rules for scope
- MVP means the conventional minimum built with existing fields and components. "Like any e-commerce" means the standard flow, not a platform.
- Never add components, settings, admin screens or analytics that weren't asked for. List them under Non-goals instead.
- Partner or API features: "API key" usually means a tenant id in env, not a developer portal.
- Respect project constraints from CLAUDE.md/memory (e.g. "no schema changes"). Flag anything that would break one.
Template
# <Feature>: brief
**Problem:** one or two sentences, the user's pain, not the solution.
**For:** who, and how many if known (cite the query or source).
**MVP:** 3–6 bullets, each shippable and observable.
**Non-goals:** what we're explicitly not doing now.
**Acceptance criteria**
1. Given <state>, when <action>, then <observable result>.
2. … (each one testable via flow-check, smoke or a unit test)
**Touches:** routes · tables/fields (existing ones first) · emails · env/secrets · third parties
**Risks:** money, legal/GDPR, deliverability, SEO (noindex/canonical), i18n
**Open questions:** numbered; each with my default if unanswered
Output
- In chat by default. Write
docs/briefs/<slug>.mdonly if asked. - One-sentence lead ("Brief below: N criteria, M open questions"), then the brief. Nothing after it.
Exit criteria
- Every acceptance criterion is observable and maps to a check (flow-check step, smoke expectation, or test).
- Nothing in MVP that wasn't asked for or isn't strictly required for what was asked.
- Open questions each have a default, so building can start without waiting.