Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Conducts structured requirements workshops to produce feature specifications, user stories, EARS-format functional requirements, acceptance criteria, and implementation checklists. Use when defining new features, gathering requirements, or writing specifications. Invoke for feature definition, requirements gathering, user stories, EARS format specs, PRDs, acceptance criteria, or requirement matrices.
.claude/skills/jeffallan-feature-forge/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-05 | ✗→✓ | ▲ Improved | 40% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 34% | 0% |
| case-22 | ✗→✓ | ▲ Improved | -13% | 0% |
| case-04 | ✓→✗ | ▼ Worse | 11% | 0% |
| case-09 | ✓→✗ | ▼ Worse | -60% | 0% |
Requirements specialist conducting structured workshops to define comprehensive feature specifications.
Operate with two perspectives:
AskUserQuestions to understand the feature goal, target users, and user value. Present structured choices where possible (e.g., user types, priority level).AskUserQuestions for structured choices and open-ended follow-ups. Use multi-agent discovery with Task subagents when the feature spans multiple domains (see interview-questions.md for guidance).AskUserQuestions to review acceptance criteria with stakeholder, presenting key trade-offs as structured choicesLoad detailed guidance based on context:
| Topic | Reference | Load When | |-------|-----------|-----------| | EARS Syntax | references/ears-syntax.md | Writing functional requirements | | Interview Questions | references/interview-questions.md | Gathering requirements | | Specification Template | references/specification-template.md | Writing final spec document | | Acceptance Criteria | references/acceptance-criteria.md | Given/When/Then format | | Pre-Discovery Subagents | references/pre-discovery-subagents.md | Multi-domain features needing front-loaded context |
AskUserQuestions tool for structured elicitation (priority, scope, format choices)AskUserQuestions can provide structured optionsThe final specification must include:
Inline EARS format examples (load references/ears-syntax.md for full syntax):
When <trigger>, the <system> shall <response>.
Where <feature> is active, the <system> shall <behaviour>.
The <system> shall <action> within <measure>.Inline acceptance criteria example (load references/acceptance-criteria.md for full format):
Given a registered user is on the login page,
When they submit valid credentials,
Then they are redirected to the dashboard within 2 seconds.Save as: specs/{feature_name}.spec.md
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-14 | pass→pass | 10,694 | 11,264 | +5% | 1 | 1 | 0% | 2,049 | 2,809 | +37% | 0 | 0 | — |
case-01 | fail→fail | 22,725 | 20,343 | -10% | 1 | 1 | 0% | 4,159 | 2,433 | -42% | 0 | 0 | — |
case-02 | fail→fail | 10,715 | 19,042 | +78% | 1 | 1 | 0% | 1,633 | 1,318 | -19% | 0 | 0 | — |
case-03 | fail→fail | 23,404 | 13,698 | -41% | 1 | 1 | 0% | 4,227 | 1,336 | -68% | 0 | 0 | — |
case-04 | pass→fail | 10,305 | 16,787 | +63% | 1 | 1 | 0% | 2,007 | 2,220 | +11% | 0 | 0 | — |
case-05 | fail→pass | 15,390 | 17,815 | +16% | 1 | 1 | 0% | 2,933 | 4,112 | +40% | 0 | 0 | — |
case-06 | fail→pass | 13,790 | 14,629 | +6% | 1 | 1 | 0% | 2,684 | 3,602 | +34% | 0 | 0 | — |
case-07 | pass→pass | 6,931 | 3,734 | -46% | 1 | 1 | 0% | 1,243 | 1,392 | +12% | 0 | 0 | — |
case-08 | fail→fail | 9,848 | 5,301 | -46% | 1 | 1 | 0% | 1,481 | 1,690 | +14% | 0 | 0 | — |
case-09 | pass→fail | 23,316 | 22,984 | -1% | 1 | 1 | 0% | 4,148 | 1,662 | -60% | 0 | 0 | — |
case-10 | pass→pass | 11,469 | 4,813 | -58% | 1 | 1 | 0% | 2,029 | 1,547 | -24% | 0 | 0 | — |
case-11 | fail→fail | 2,898 | 7,465 | +158% | 1 | 1 | 0% | 518 | 2,050 | +296% | 0 | 0 | — |
case-12 | pass→pass | 16,223 | 11,861 | -27% | 1 | 1 | 0% | 3,167 | 3,015 | -5% | 0 | 0 | — |
case-13 | fail→fail | 15,050 | 19,723 | +31% | 1 | 1 | 0% | 2,741 | 2,195 | -20% | 0 | 0 | — |
case-15 | pass→pass | 5,537 | 4,451 | -20% | 1 | 1 | 0% | 1,034 | 1,598 | +55% | 0 | 0 | — |
case-16 | pass→pass | 17,239 | 6,221 | -64% | 1 | 1 | 0% | 3,061 | 1,929 | -37% | 0 | 0 | — |
case-17 | pass→pass | 7,786 | 5,099 | -35% | 1 | 1 | 0% | 1,256 | 1,694 | +35% | 0 | 0 | — |
case-18 | fail→fail | 13,095 | 7,224 | -45% | 1 | 1 | 0% | 2,288 | 1,993 | -13% | 0 | 0 | — |
case-19 | pass→pass | 14,079 | 9,711 | -31% | 1 | 1 | 0% | 1,758 | 2,792 | +59% | 0 | 0 | — |
case-20 | pass→pass | 4,361 | 7,455 | +71% | 1 | 1 | 0% | 759 | 2,077 | +174% | 0 | 0 | — |
case-21 | pass→pass | 1,849 | 4,009 | +117% | 1 | 1 | 0% | 395 | 1,489 | +277% | 0 | 0 | — |
case-22 | fail→pass | 12,111 | 6,587 | -46% | 1 | 1 | 0% | 2,243 | 1,946 | -13% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 19 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +5 percentage points is the difference between those two pass rates over the 19 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.