From amplify
Conducts structured requirements-gathering interviews for software features/systems. Reads SPEC.md and context, asks numbered questions on purpose, technical design, UI/UX, edge cases, security, rollout. For deep requirement elicitation before specs/plans.
npx claudepluginhub wunki/amplify --plugin ask-questions-if-underspecifiedThis skill uses the workspace's default tool permissions.
Exhaustive requirements elicitation through deep, structured questioning. This skill gathers requirements; it does not write specs or plans.
Turns vague goals into structured requirements.md via systematic interview across business/user/tech axes, extraction, and cross-check. Outputs for /blueprint in greenfield/feature/refactor/bugfix formats.
Conducts short adaptive interview (2-6 questions) to clarify feature intent and business context, then launches /team-feature with compiled brief. Use for vague requests or explicit pre-build discussions.
Share bugs, ideas, or general feedback.
Exhaustive requirements elicitation through deep, structured questioning. This skill gathers requirements; it does not write specs or plans.
Before asking anything:
SPEC.md exists in the project root (cwd). If yes, read it.README.md, any files in docs/, and any existing code files directly related to the feature being discussed.Do not ask questions you can already answer from existing context.
If no existing context is found (greenfield project), skip directly to Step 2 and open with purpose and scope questions.
Cover all areas below. Ask only non-obvious questions — things that cannot be discovered by reading the codebase.
| Area | What to explore |
|---|---|
| Purpose | What problem? Why now? What triggered this? What does success look like? |
| Technical | Architecture choices, data model, APIs, integrations, performance requirements |
| UI/UX | User flows, states, feedback, accessibility, responsive behavior |
| Edge cases | What could go wrong? Invalid inputs, race conditions, failure modes |
| Tradeoffs | What are we optimizing for? What are we willing to sacrifice? |
| Security/Privacy | Data sensitivity, auth requirements, audit needs |
| Testing | How do we verify it works? What is critical to test? |
| Rollout | Feature flags? Migration? Backwards compatibility? |
Prioritization: Always lead with Purpose questions. Then Technical. Adjust order based on what existing context already covers — skip areas the codebase has answered. Security/Privacy and Edge cases are never skippable; surface them even if the user seems impatient.
Question format:
1a 2b 3cPacing:
Terse or "I don't know" answers: If the user gives a non-answer on a critical area (security, edge cases, rollout), note the gap explicitly, propose a safe default, confirm the user accepts it, and move on. Do not loop on the same question.
Challenge the premise: If the approach described seems wrong, say so early and explain why. Redirect before requirements harden.
The interview is complete when BOTH of the following are true:
Do not continue interviewing indefinitely. When coverage is sufficient across all areas, proceed to Step 4.
After confirmation, determine the next action based on what the user has asked for. If not stated, ask via AskUserQuestion (single-select):
"Write the spec" — invoke create-spec skill
"Build the plan" — invoke create-plan skill
"Jump to implementation" — proceed directly
User asked for a spec, or SPEC.md exists and needs updating → invoke the create-spec skill
User asked for a task plan or implementation steps → invoke the create-plan skill
User asked to proceed directly with implementation → summarize the agreed requirements as a short context block, then proceed
User ends the conversation without a clear next step → output the requirements summary and note which skill to invoke when ready
I've read the existing SPEC.md and codebase. A few questions before I fill in the gaps:
1) User authentication - which approach?
a) Email/password only (simplest)
b) OAuth providers (Google, GitHub)
c) Both (recommended for flexibility)
d) Not sure - recommend what fits
2) Session handling?
a) JWT in HTTP-only cookie (recommended for web)
b) JWT in localStorage
c) Server-side sessions with Redis
d) Not sure - use recommended
3) What happens on auth failure?
a) Redirect to login page
b) Show inline error, stay on page
c) Depends on context - describe: ___
Reply with: 1c 2a 3a (or describe)
After receiving answers, dig deeper:
Got it: OAuth + email/password, JWT cookies, redirect on failure.
Follow-up on OAuth:
4) Which providers are must-have vs nice-to-have?
a) Google only (most users have it)
b) Google + GitHub (good for dev tools)
c) Let users choose from: ___
5) Account linking - if user signs up with email, then tries Google with same email?
a) Link accounts automatically
b) Prompt user to link or keep separate
c) Reject - must use original method
Continue until requirements are complete, then use create-spec to write the spec.