Help us improve
Share bugs, ideas, or general feedback.
From software-engineering
Turn vague implementation requests into testable requirements before coding.
How this skill is triggered — by the user, by Claude, or both
Slash command
/software-engineering:requirements-clarifierThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
<Purpose>
Share bugs, ideas, or general feedback.
<Use_When>
<Do_Not_Use_When>
<Execution_Policy>
Parse the user's idea
Detect brownfield vs greenfield:
For brownfield: Explore relevant codebase areas
Set ambiguity threshold: Default 0.2 (20%)
Announce the interview to the user:
Starting requirements clarification. I'll ask targeted questions to understand your idea thoroughly before building anything. After each answer, I'll show your clarity score. We'll proceed once ambiguity drops below 20%.
Your idea: "{initial_idea}" Project type: {greenfield|brownfield} Current ambiguity: 100%
Repeat until ambiguity ≤ threshold OR user exits early:
Question targeting strategy:
Question styles by dimension:
| Dimension | Question Style | Example |
|---|---|---|
| Goal Clarity | "What exactly happens when...?" | "When you say 'manage tasks', what specific action does a user take first?" |
| Constraint Clarity | "What are the boundaries?" | "Should this work offline, or is internet connectivity assumed?" |
| Success Criteria | "How do we know it works?" | "If I showed you the finished product, what would make you say 'yes, that's it'?" |
| Context Clarity (brownfield) | "How does this fit?" | "I found JWT auth middleware in src/auth/. Should this feature extend that path or diverge?" |
Present it with the current ambiguity context:
Round {n} | Targeting: {weakest_dimension} | Why now: {rationale} | Ambiguity: {score}%
{question}
After receiving the user's answer, score clarity across all dimensions.
Greenfield: ambiguity = 1 - (goal × 0.40 + constraints × 0.30 + criteria × 0.30)
Brownfield: ambiguity = 1 - (goal × 0.35 + constraints × 0.25 + criteria × 0.25 + context × 0.15)
After scoring, show the user their progress:
Round {n} complete.
| Dimension | Score | Weight | Weighted | Gap |
|-----------|-------|--------|----------|-----|
| Goal | {s} | {w} | {s*w} | {gap or "Clear"} |
| Constraints | {s} | {w} | {s*w} | {gap or "Clear"} |
| Success Criteria | {s} | {w} | {s*w} | {gap or "Clear"} |
| **Ambiguity** | | | **{score}%** | |
{score <= threshold ? "Clarity threshold met! Ready to proceed." : "Focusing next question on: {weakest_dimension}"}
At specific round thresholds, shift the questioning perspective:
Challenge the user's core assumption. Ask "What if the opposite were true?" or "What if this constraint doesn't actually exist?"
Probe whether complexity can be removed. Ask "What's the simplest version that would still be valuable?"
The ambiguity is still high after 8 rounds, suggesting we may be addressing symptoms rather than the core problem. Ask "What IS this, really?"
Challenge modes are used ONCE each, then return to normal Socratic questioning.
When ambiguity ≤ threshold (or hard cap / early exit):
.specs/requirements-clarifier-{slug}.mdSpec structure:
# Requirements Spec: {title}
## Metadata
- Rounds: {count}
- Final Ambiguity Score: {score}%
- Type: greenfield | brownfield
## Clarity Breakdown
| Dimension | Score | Weight | Weighted |
...
## Goal
{crystal-clear goal statement}
## Constraints
- {constraint 1}
## Non-Goals
- {explicitly excluded scope}
## Acceptance Criteria
- [ ] {testable criterion 1}
## Assumptions Exposed & Resolved
| Assumption | Challenge | Resolution |
...
After the spec is written, present execution options:
<Escalation_And_Stop_Conditions>
<Final_Checklist>
npx claudepluginhub yeaight7/agent-powerups --plugin software-engineeringCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.