papi-sdlc-user-stories
Create or work with user stories — define a single actor goal, its interface, and falsifiable acceptance criteria.
Skill by stainsby
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/stainsby-papi-sdlc-user-stories
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/papi-sdlc-user-stories
What's inside
- Skill name
papi-sdlc-user-stories- Description
- Create or work with user stories — define a single actor goal, its interface, and falsifiable acceptance criteria. [PAPI SDLC]
- License
- MIT
- Instructions
- 127 lines in SKILL.md · view on GitHub
Files (3)
- SKILL.md
- user-stories-template.md · assets/
- user-story-template.md · assets/
SKILL.md (first lines)
# SDLC Task - User Stories ## When to use this skill Use this skill whenever a unit of product or system behaviour needs to be captured from the perspective of a specific actor — whether for backlog grooming, epic decomposition, or as the specification source for a development or component task. ## When to use this skill (continued) - Read, copy and use the appropriate template. - Create the parent document first if one does not yet exist for the product/epic. - Each individual story document links back to its parent, and the parent indexes all child stories. ## Dependencies Reading these skills is REQUIRED to understand and execute this skill: - PAPI skill `papi-sdlc-understand` - PAPI skill `papi-templates-understand` ## Core principles ### One story, one actor, one goal A user story describes a single outcome for a single role. If the narrative requires more than one actor or more than one goal, split it into separate stories. Compound stories indicate unclear scope and produce untestable acceptance criteria. ### Specific roles, not "user" The actor must identify a real, distinguishable role with distinct needs (e.g., "authenticated administrator", "background job scheduler", "third-party API consumer"). Generic actors like "user" or "system" are not acceptable — they obscure who actually benefits and make the story harder to prioritise and validate. ### Goals state *what*, not *how* The "I want to" clause must describe a goal, not an implementation. If the narrative specifies a UI control, an API endpoint, or an algorithm, it has crossed into solution space. Reserve implementation decisions for the development or component task that fulfils the story. ### Falsifiable benefit The "so that" clause must describe an outcome that can be confirmed or refuted through the interface described in the story. If the benefit cannot be observed or measured, it is not a valid acceptance criterion anchor and the story needs to be rewritten. ### Interface before criteria Before writing acceptance criteria, the Interface section must clearly describe how the actor initiates the interaction and what observable response or state change they receive. Acceptance criteria must assert outcomes expressed in terms of that interface — not internal system state or implementation details. ### Negative and boundary cases are required Every story must include at least one acceptance criterion covering a negative case (e.g., invalid input, unauthorised access, resource not found) or a boundary condition. Stories with only happy-path criteria are incomplete. ### Stories are not tasks, and carry no evidence A user story is a specification artefact, not a work item. Once a story reaches **Ready** status, one or more development or component tasks are created to fulfil it. The story remains as the authoritative statement of intent and is linked from those tasks. The story document must not contain implementation notes, test results, fulfilment status, or audit findings. Those belong in task, testing, release, or audit artefacts. The story's only lifecycle signal is its **Status** field. ### Stories know nothing about component specifications A user story is an upstream statement of intent and MUST NOT reference component specifications, capability codes, or any other solution structure. The dependency points the other way: the user-facing components that fulfil a story reference *it* from their capability `**Users:**` fields (see the `papi-sdlc-component-specification` skill), never the reverse. This keeps stories stable when the architecture is refactored. ### Stories are written in the actor's language Narrative, interface, and acceptance criteria must use vocabulary the named role would actually use. Reviewer check: would this role read the story and recognise their own world? If not, rewrite. ### Status reflects scope A story's **Status** must be consistent with the scope of its parent epic/release. Stories outside current scope stay **Draft** (or are removed). Do not mark a story **Ready** unless its scope agrees with that of its parent epic/release. ## Checklist when creating a user story - [ ] ID assigned (unique within the epic or backlog) - [ ] Actor is specific and distinguishable — not "user" or "system" - [ ] Goal states what the actor achieves, not how the system implements it - [ ] Benefit is falsifiable — it can be confirmed through the interface - [ ] Interface section describes the observable interaction and response - [ ] At least two acceptance criteria written in Given / When / Then form - [ ] At least one negative or boundary acceptance criterion included - [ ] All criteria are assertable through the interface, not internal state - [ ] Story contains exactly one actor and one primary goal (split if not) - [ ] `**Role:**` field set, matches the narrative actor, and matches a role defined in the parent user-stories document - [ ] Story body is free of capability codes and component-spec references - [ ] Wording uses language the named role would recognise - [ ] No implementation / test / fulfilment / audit evidence in story body - [ ] Status (Draft / Ready / In Progress / Done) matches parent scope
From stainsby/papi, MIT.
More from stainsby/papi
- 0.496score
papi-sdlc-onboard
stainsby
Start a new project that will be managed by the PAPI methodology.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-task-acceptance-test
stainsby
Plan and perform user-acceptance testing for user stories - exercise each story end-to-end through the real user interface in the appropriate role, with…
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-assimilate
stainsby
Adopt existing project components (code, docs,…) into PAPI methodology, fully or incrementally, if it appears to not follow PAPI principles.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-long-task
stainsby
Manage a task with many repeated steps, or a long running task with many steps, so that it is tracked and resumable over more than one session if needed.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-fix
stainsby
Create or work with defect fix tasks, where the defect may be in code, a specification, documentation, tooling, or a process.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-sprint
stainsby
Create or work with sprint-like tasks — plan, execute, verify, and close a bounded cycle of development work .
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-task-charter-audit
stainsby
Create or work with charter audit tasks that check alignment between the project's Charter and its user stories — both top-down and bottom-up.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-task-fulfilment-audit
stainsby
Create or work with fulfilment audit tasks that check forward and backward mappings between user stories and the capabilities declared in component…
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-templates-understand
stainsby
Understand and manage templates—read this EACH time you consider/encounter them or wish to update them, delete them, or create new ones.
SkillCFreshness: C★ 1Claude Code +9 - 0.491score
papi-process-improvement
stainsby
Audit completed tasks and documents to identify process improvement opportunities and propose corrective actions.
SkillCFreshness: C★ 1Claude Code +9 - 0.491score
papi-sdlc-understand
stainsby
Understand SDLC core principles and component model.
SkillCFreshness: C★ 1Claude Code +9 - 0.491score
papi-sdlc-charter
stainsby
Create, understand, or work with the project charter.
SkillCFreshness: C★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- May 31, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/stainsby/papi
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from stainsby
- 0.496score
papi-sdlc-onboard
stainsby
Start a new project that will be managed by the PAPI methodology.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-sprint
stainsby
Create or work with sprint-like tasks — plan, execute, verify, and close a bounded cycle of development work .
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-fix
stainsby
Create or work with defect fix tasks, where the defect may be in code, a specification, documentation, tooling, or a process.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-assimilate
stainsby
Adopt existing project components (code, docs,…) into PAPI methodology, fully or incrementally, if it appears to not follow PAPI principles.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-task-acceptance-test
stainsby
Plan and perform user-acceptance testing for user stories - exercise each story end-to-end through the real user interface in the appropriate role, with…
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
papi-sdlc-task-charter-audit
stainsby
Create or work with charter audit tasks that check alignment between the project's Charter and its user stories — both top-down and bottom-up.
SkillCFreshness: C★ 1Claude Code +9
Cite this page
papi-sdlc-user-stories skill. Agent Mart. https://agentmart.dev/skills/stainsby-papi-sdlc-user-stories (last updated 2026-10-24)