From smurf
User story format (Gherkin Feature/Scenario/Given/When/Then) plus MoSCoW priority and NFR fields. Use when producing user stories. Loaded by product-owner.
How this skill is triggered — by the user, by Claude, or both
Slash command
/smurf:gherkin-storiesThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
User stories live under `docs/stories/<sprint-id>/<NN>-<slug>.feature`
User stories live under docs/stories/<sprint-id>/<NN>-<slug>.feature
where <sprint-id> follows the pattern YYYY-MM-DD-<slug> derived from
the run that produced them.
Feature: <imperative title — what the user can now do>
As a <role>
I want <capability>
So that <value>
Background:
Given <preconditions shared by all scenarios>
Scenario: <happy-path scenario name>
Given <state>
When <action>
Then <observable outcome>
And <observable outcome>
Scenario: <edge case>
Given <state>
When <action>
Then <observable outcome>
Scenario Outline: <parametrized scenario>
When <action with <param>>
Then <expected with <param>>
Examples:
| param | expected |
| a | x |
| b | y |
After the Gherkin block, append a markdown block:
## Acceptance criteria
- AC-1: <SMART, testable; reference a Scenario by name if helpful>
- AC-2: ...
## NFR (non-functional requirements)
- latency: <target with units, e.g. p95 < 200ms>
- throughput: <target>
- error budget: <percentage>
- accessibility / i18n / a11y: <if applicable>
## Priority
- MoSCoW: must | should | could | wont
## Source
- feedback: <docs/feedback/<file>.md path or "goal" if direct from kickoff>
- linked stories: <ids if this depends on or extends another story>
## Status
- proposed | accepted | in-progress | done | superseded by <id>
src/. Stories say what, not how.## Source.accepted when the
orchestrator dispatches it for design (wave 2) or implementation
(wave 3).<NN>-<slug>.feature where:
<NN> is a 2-digit sequence within the sprint, starting at 01.<slug> is kebab-case derived from the Feature title.Example: docs/stories/2026-05-09-rate-limit/01-per-tenant-rate-limit.feature
npx claudepluginhub abaddon/smurf --plugin smurfGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Enforces test-driven development: write failing test first, then minimal code to pass. Use when implementing features or bugfixes.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.