write-user-story
Skill4 starsChanged 3 months agoMITView on GitHub
WHEN/WHERE/WHO: [Scheduling: Developers, product owners, or agents formalizing requirements into backlog items.] HOW: [Structural: Use this SKILL to write User Stories backed strictly by BDD "Given/When/Then" executable specifications.] WHY: [Scheduling: Vague stories lead to misunderstandings. BDD-style criteria make expected behavior explicit and testable.]
3 other projects use a version of this.
Adopted by
Most recently taken up by
- quochuydev/kittheir own version, first seen Nov 8, 2026
- MarieLynneBlock/arcanum-artifextheir own version, first seen Nov 1, 2026
- testomatio/skillstheir own version, first seen Jul 9, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- testomatio/skills★ 19same name
- MarieLynneBlock/arcanum-artifex★ 4same name
- quochuydev/kit★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository61 other files it gives its agents.
- activate-personalSkill
- analyze-with-tactics-questionnairesSkill
- apply-agile-testing-quadrantsSkill
- apply-architectural-tacticsSkill
- apply-attribute-driven-designSkill
- apply-fundamentals-of-data-visualizationSkill
- apply-oopsi-modelSkill
- apply-screenplay-patternSkill
- apply-specification-by-exampleSkill
- blog-topic-discoverSkill
- build-agent-memory-systemsSkill
- build-business-objectives-modelSkill
- build-data-dictionarySkill
- build-feature-treeSkill
- comment-alive-test-driven-developmentSkill
- conduct-event-stormingSkill
- create-ecosystem-mapSkill
- create-living-documentationSkill
- create-skill-from-bookSkill
- CREATING-SKILL-TEMPLATESkill
- define-architectural-driversSkill
- define-bounded-contextsSkill
- define-ubiquitous-languageSkill
- design-agentic-screenplay-modelSkill
- design-agent-perception-layersSkill
- design-agent-planningSkill
- design-agent-reward-functionsSkill
- design-agents-using-patternsSkill
- design-architecture-viewpointsSkill
- design-autonomous-ai-interfacesSkill
- design-ddd-aggregatesSkill
- design-tool-use-sandboxingSkill
- document-architectural-decisionsSkill
- document-legacy-codebaseSkill
- doc-with-usage-exampleSkill
- draft-srs-documentSkill
- elicit-requirements-modelsSkill
- evolve-skill-with-wikiSkill
- extract-business-rulesSkill
- facilitate-example-mappingSkill
- facilitate-user-story-mappingSkill
- implement-agent-observabilitySkill
- implement-agent-reflectionSkill
- improve-existing-skillSkill
- improve-user-storySkill
- managing-ai-projectsSkill
- orchestrate-multi-agent-collaborationSkill
- prioritize-requirementsSkill
- review-c4-modelSkill
- review-data-engineeringSkill
- save-as-skillSkill
- scaffold-cmake-cxx-sanitize-gtest-envSkill
- skill-commonSkill
- task-commit-triggerSkill
- test-case-with-demoSkill
- test-case-with-readmeSkill
- test-driven-developmentSkill
- UnitTesting-convert2CaTDDSkill
- update-my-resumeSkill
- update-spec-contextSkill
- The first 60 shown.
The file
Show its rules and text
We split this skill into the rules it gives an agent
18 rules. 0 are common, 13 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
13
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
When this skill is activated, first load skill-common and apply the shared conventions it defines: canonical section order, frontmatter …
- Distinctive: line 49
Transfer Check: Verify the workflow still works for greenfield feature stories and refinements of partially defined backlog items.
- Distinctive: line 50
Stop Rule: If the request has no observable business behavior, stop and tell the user it is not a valid user-story candidate.
- Very specific: line 55
Primary Story Format: Use the traditional As a <role>, I want <capability>, So that <value> format by default.
- Distinctive: line 57
Keep scenarios atomic: one behavior per scenario.
- Distinctive: line 58
Keep examples concrete, realistic, and domain-readable.
- Very specific: line 59
Do not couple Then clauses to implementation details, APIs, or database internals.
- Distinctive: line 62
If the input is purely a technical chore (e.g., "Update dependency X to version Y") with no observable business behavior, stop and inform …
- Distinctive: line 67
If any of these are missing or vague, ask the user before continuing.
- Distinctive: line 80
Ensure scenarios are declarative (focusing on business intent) rather than imperative (focusing on UI clicks and keystrokes).
- Very specific: line 81
Use realistic example values and explicit expected outcomes in Then.
- Very specific: line 84
Remove ambiguous words from Then clauses (for example: fast, robust, seamless) unless quantified.
- Distinctive: line 85
Verify each scenario tests one behavior and has clear pass/fail observables.
- Distinctive: line 86
Add a brief ambiguity/risk note for unresolved business decisions.
- Distinctive: line 102
Verify that every scenario has at least one Given, one When, and one Then.
- Distinctive: line 103
Verify that the story includes a clear business value statement.
- Distinctive: line 104
Verify at least one error/edge path exists and is behavior-focused.
- Very specific: line 105
Verify all Then clauses are concrete and testable without implementation coupling.
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Write User Story in BDD Style
Common Contract (Load First)
When this skill is activated, first load skill-common and apply the shared conventions it defines: canonical section order, frontmatter rules, anti-pattern guidance, and the Review In Mind loop in review-in-mind. This skill adds only domain-specific rules below.
Who
Developers, product owners, business analysts, or AI Agents. The agent uses this skill to produce well-structured user stories with BDD-style acceptance criteria.
What
Generate a user story that focuses on business value and testability. The output is a self-contained story package: story statement, executable BDD criteria, concrete business examples, and ambiguity/risk notes ready for backlog refinement.
When
Invoke this skill when asked to write, create, or draft a user story, or when asked for BDD-style acceptance criteria based on a feature description.
Where
Applies to product requirements, feature descriptions, and backlog items (e.g., JIRA, markdown files).
Why
BDD-style acceptance criteria make expected behavior explicit, testable, and unambiguous. Consistent story format reduces back-and-forth between product and engineering, and Given/When/Then maps directly to automated acceptance tests.
Inputs
- Feature description (required): What the user wants to build.
- Business goal / expected outcome (required): Why this feature should exist and what measurable behavior change is expected.
- Role/persona (optional): Who the end-user is.
- Business value (optional): Why this feature matters.
- Edge cases (optional): Known constraints or error paths.
Output (Logical Evidence)
- A User Story formatted using the standard templates.
- Executable BDD criteria with at least one happy path and one error/edge path.
- A compact example set with realistic domain data.
- A short ambiguity/risk list for unresolved decisions.
Optimization Readiness
- Failure Signals: The story collapses into a technical task, scenarios focus on UI clicks instead of business behavior, acceptance criteria are not executable, or realistic examples are replaced with vague placeholders.
- Evidence To Collect: Story drafts, BDD scenarios, example sets, ambiguity lists, and reviewer feedback on whether the story drives implementation and testing cleanly.
- Safe Mutation Boundaries: Refine story phrasing, scenario-shaping prompts, example guidance, and ambiguity-reporting rules without changing the core business-goal-first and BDD-first structure.
- Acceptance Criteria: Accept revisions only if the story ties capability to business value, includes executable Given/When/Then criteria, covers both success and edge behavior, and avoids implementation-coupled
Thenclauses. - Rejected Revision Handling: Record technical-chore stories, UI-script scenarios, and placeholder-heavy example patterns so they are not reused blindly.
- Transfer Check: Verify the workflow still works for greenfield feature stories and refinements of partially defined backlog items.
- Stop Rule: If the request has no observable business behavior, stop and tell the user it is not a valid user-story candidate.
Constraints (Logical Boundaries)
- RULE 1: BDD Executable Specifications First. The absolute most important part of the story is the Acceptance Criteria. They MUST be written as strict BDD
Given/When/Thenscenarios that can be directly translated into automated tests (e.g., Cucumber). - RULE 2: Goal Before Detail. Derive scenario scope from business outcome first. Do not start from UI click paths.
- Primary Story Format: Use the traditional
As a <role>, I want <capability>, So that <value>format by default. - Advisory Story Format: You may optionally suggest the
In order to <value>, As a <role>, I want <capability>format if the business goal seems to be getting lost in the technical details. - Keep scenarios atomic: one behavior per scenario. Do not write "end-to-end test scripts" disguised as scenarios.
- Keep examples concrete, realistic, and domain-readable; avoid placeholders that hide rules.
- Do not couple
Thenclauses to implementation details, APIs, or database internals.
One More Thing
If the input is purely a technical chore (e.g., "Update dependency X to version Y") with no observable business behavior, stop and inform the user that BDD User Stories are for functional requirements, not technical debt.
How (Structural Workflow)
Phase 1: Gather Context
- Identify the role (who), the capability (what), and the business value (why).
- If any of these are missing or vague, ask the user before continuing.
- Confirm the expected business outcome and scope boundary before drafting scenarios.
Phase 2: Write the Story Statement
- Compose the Primary Story statement (
As a... I want... So that...).
Phase 3: Identify Scenarios
- Extract the happy path first — the main success flow.
- Identify alternate paths — valid variations of the input or context.
- Identify error or edge-case paths — invalid input, missing data, permission failures, timeouts, etc.
Phase 4: Write BDD Acceptance Criteria
- For each scenario, write the executable specifications using
Given / When / Then. - Ensure scenarios are declarative (focusing on business intent) rather than imperative (focusing on UI clicks and keystrokes).
- Use realistic example values and explicit expected outcomes in
Then.
Phase 5: Refine for Specification Quality
- Remove ambiguous words from
Thenclauses (for example: fast, robust, seamless) unless quantified. - Verify each scenario tests one behavior and has clear pass/fail observables.
- Add a brief ambiguity/risk note for unresolved business decisions.
Resources
- BDD Story Format
- Specification by Example Enhancements
Review In Mind (ReviewInMindGenie)
Execute the common review loop in review-in-mind before delivering.
Review lens for this skill:
- Does the story state role, capability, and business value with executable Given/When/Then scenarios?
- Is there at least one error/edge path with concrete examples and no implementation-coupled
Thenclauses? - Would a skeptical PO/QA accept it as testable without further clarification?
Validation
- Verify that every scenario has at least one Given, one When, and one Then.
- Verify that the story includes a clear business value statement.
- Verify at least one error/edge path exists and is behavior-focused.
- Verify all
Thenclauses are concrete and testable without implementation coupling.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

