Why "just prompt it" produces bad stories
Ask a generic AI chat for user stories and you'll often get "As a user, I want..." regardless of what personas you actually named, technical tasks disguised as stories ("build the database table"), and acceptance criteria that only cover the happy path. A dev team hands those straight back.
What it does
- Specific personas. "As a <specific persona>" — never "as a user" if the input names a role.
- Vertical slices only. Each story delivers observable value; it's not a technical task in disguise.
- Gherkin acceptance criteria. Given/When/Then, with And for additional clauses — one scenario per behaviour, including the unhappy paths.
- Full coverage per story. At least one happy-path scenario, one negative or edge scenario, and validation rules where input is captured.
- Flags oversized stories. If a story looks too large for a sprint, it says so and proposes the split.
Example
Made up for illustration, not a real client.
Feature: warehouse staff need to flag damaged stock on arrival so it doesn't get shelved. Persona: Warehouse Receiver.
### US-01 — Flag damaged stock on arrival Story: As a Warehouse Receiver, I want to flag a delivered item as damaged, so that it is excluded from shelving. Priority: Must Scenario: Item flagged as damaged Given an item has been received When I mark it as damaged with a reason Then it is excluded from putaway And a damage record is created Scenario: Reason not provided Given I attempt to flag an item damaged When I submit without a reason Then I see a validation error And no damage record is created
How it works with Claude
One-time setup in Claude, about 10 minutes.
Paste your feature description, notes or requirements list.
Stories land in your backlog format, Gherkin criteria included.
FAQs
Can AI write good user stories?
AI can write well-formatted user stories with Gherkin acceptance criteria, including edge cases, when it's given a clear feature description and instructed to use vertical slices rather than technical tasks. A packaged skill enforces that format every time; a generic prompt does not.
Does it include negative and edge-case scenarios?
Yes. Every story gets at least one happy-path scenario and at least one negative or edge scenario, plus validation rules where input is captured.