Memstack Product User Story Generator logo

Memstack Product User Story Generator

Community
cwinvestments
memstack-product-user-story-generator

Use this skill when the user says 'user stories', 'write stories', 'backlog', 'sprint planning', 'acceptance criteria', or needs prioritized stories with Given/When/Then criteria and story point estimates. Do NOT use for full PRDs or detailed feature specs.

Overview

Publishercwinvestments
Repositorymemstack
Skill namememstack-product-user-story-generator
Stars
425
Forks
45
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by cwinvestments on GitHub. Read the source before you install it.

Installation

Install the Memstack Product User Story Generator AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/cwinvestments/memstack/tree/master/skills/product/user-story-generator
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/cwinvestments/memstack.git /tmp/memstack
mkdir -p .claude/skills
cp -r /tmp/memstack/skills/product/user-story-generator .claude/skills/memstack-product-user-story-generator
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Memstack Product User Story Generator in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Memstack Product User Story Generator on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Memstack Product User Story Generator is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

User Story Generator: Generating user stories...

Produces prioritized user stories with Given/When/Then acceptance criteria, story point estimates, story mapping across epics, and MoSCoW prioritization for sprint planning.

Activation

When this skill activates, output:

User Story Generator: Generating user stories...

Then execute the protocol below.

Context Guard

ContextStatus
User says "user stories", "write stories", "backlog"ACTIVE
User says "sprint planning" or "acceptance criteria"ACTIVE
User wants to break work into estimable, assignable storiesACTIVE
User wants a full product requirements documentDORMANT: use PRD Writer
User wants a detailed spec for one featureDORMANT: use Feature Spec

Common Mistakes

MistakeWhy It's Wrong
"As a user, I want the system to..."Stories describe user needs, not system behavior. The "I want to" should be a user action.
"Write a story for every edge case"Edge cases go in acceptance criteria, not separate stories. One story per user intent.
"Stories without acceptance criteria""Done" becomes subjective. Every story needs testable criteria before sprint planning.
"Estimate in hours"Hours vary by person. Story points measure relative complexity, not calendar time.
"50-point stories in the sprint"If it's bigger than 8 points, split it. Large stories hide unknowns and block the team.

Protocol

Step 1: Gather Context

If the user hasn't provided details, ask:

  1. Feature/epic: what area are you writing stories for?
  2. Personas: who are the users? (roles, permissions, experience levels)
  3. Existing context: is there a PRD, feature spec, or design to reference?
  4. Sprint goal: what are you trying to ship this sprint?
  5. Team capacity: how many story points can the team handle? (helps scope)

Step 2: Identify Epics & Themes

Group stories under epics (large bodies of work):

markdown
## Story Map

### Epic 1: [Epic Name]
**Theme:** [What area of the product this covers]
**Goal:** [What completing this epic achieves]

Stories:
- [ ] US-001: [Story title]
- [ ] US-002: [Story title]
- [ ] US-003: [Story title]

### Epic 2: [Epic Name]
**Theme:** [Theme]
**Goal:** [Goal]

Stories:
- [ ] US-004: [Story title]
- [ ] US-005: [Story title]

Story mapping layout:

            User Journey →
            ┌─────────────────────────────────────────────┐
            │ Step 1      │ Step 2      │ Step 3          │
Epics  ─────┼─────────────┼─────────────┼─────────────────┤
            │ US-001 (M)  │ US-003 (M)  │ US-006 (M)      │ ← Must
            │ US-002 (S)  │ US-004 (S)  │ US-007 (C)      │ ← Should/Could
            │             │ US-005 (C)  │                  │
            └─────────────┴─────────────┴─────────────────┘

The top row of each column is the minimum to deliver a working user journey. Everything below is enhancement.

Step 3: Write User Stories

Story template:

markdown
### US-[ID]: [Short descriptive title]

**As a** [persona/role],
**I want to** [action/capability],
**So that** [benefit/outcome].

**Priority:** [Must / Should / Could / Won't]
**Story points:** [1 / 2 / 3 / 5 / 8]
**Epic:** [Parent epic]
**Dependencies:** [US-XXX or None]

#### Acceptance Criteria

**AC-1: [Happy path]**
Given [precondition]
When [user action]
Then [expected result]

**AC-2: [Validation/error]**
Given [precondition]
When [invalid action or error condition]
Then [error handling behavior]

**AC-3: [Edge case or permission]**
Given [special condition]
When [action]
Then [expected behavior]

#### Notes
- [Design reference, API dependency, or technical consideration]
- [Out of scope for this story: X, Y]

Story writing rules:

  • One user intent per story (splittable, not compound)
  • The "so that" must describe a user benefit, not a system behavior
  • 2-5 acceptance criteria per story (if you need more, split the story)
  • Include at least one error/validation criterion per story
  • Stories should be completable within one sprint

Step 4: Estimate with Story Points

Fibonacci scale reference:

PointsRelative SizeTeam ExampleTypical Duration
1TrivialCopy change, config updateHours
2SmallSimple UI component, basic CRUD0.5-1 day
3MediumFeature with some logic, API integration1-2 days
5LargeComplex feature, multiple components2-4 days
8Very largeMulti-system integration, new architecture3-5 days
13Epic-levelShould be split into smaller storiesSplit it

Estimation heuristic:

  1. Pick a reference story the team agrees is a "3" (your baseline)
  2. Compare each new story: "Is this bigger or smaller than a 3?"
  3. Account for: complexity, uncertainty, testing effort, and coordination needed
  4. If you can't estimate confidently → add a spike story (time-boxed research)

Spike story template:

markdown
### US-[ID]: [Spike] Investigate [unknown]

**As a** developer,
**I want to** research [technical question or unknown],
**So that** we can estimate and plan [dependent stories].

**Time box:** [X hours/days]
**Output:** Decision document with recommendation

#### Acceptance Criteria
- [ ] [Specific question 1] is answered
- [ ] [Specific question 2] is answered
- [ ] Recommendation documented for team review

Step 5: Prioritize (MoSCoW + Value/Effort)

MoSCoW assignment:

PriorityStoriesRationale
MustUS-001, US-003, US-006Product doesn't function without these
ShouldUS-002, US-004Important for good experience, not blocking
CouldUS-005, US-007Nice to have, include if sprint has capacity
Won'tUS-008Deferred to future sprint

Value/Effort matrix:

             High Value
                │
    Quick Wins  │  Strategic
    (Do first)  │  (Plan carefully)
────────────────┼────────────────
    Fill-ins    │  Avoid (for now)
    (If time)   │  (High cost, low reward)
                │
             Low Value

      Low Effort ──────── High Effort

Place each story on the matrix. Sprint should be loaded with Quick Wins and Strategic items.

Step 6: Organize Sprint Backlog

Sprint planning output:

markdown
## Sprint [X] Backlog: [Sprint Goal]

**Capacity:** [X] story points
**Duration:** [2 weeks]
**Sprint goal:** [One sentence: what we're shipping]

### Committed Stories

| ID | Story | Points | Priority | Assignee | Dependencies |
|----|-------|--------|----------|----------|-------------|
| US-001 | [Title] | 3 | Must | [Name] | None |
| US-003 | [Title] | 5 | Must | [Name] | US-001 |
| US-002 | [Title] | 2 | Should | [Name] | None |
| US-004 | [Title] | 3 | Should | [Name] | US-003 |
| **Total** | | **13** | | | |

### Stretch Goals (if capacity)
| US-005 | [Title] | 2 | Could | none | None |

### Not This Sprint
| US-008 | [Title] | 8 | Won't | none | Needs design |

Sprint planning rules:

  • Total committed points should not exceed team velocity
  • Must stories go in first, then Should, then Could
  • Respect dependency order (don't commit US-003 without US-001)
  • Leave 10-20% buffer for bugs, reviews, and unexpected work

Output Format

markdown
# User Stories: [Feature/Epic Name]

## Story Map
[Epic/theme overview from Step 2]

## Stories

### US-001: [Title]
[Full story from Step 3]

### US-002: [Title]
[Full story from Step 3]

[... all stories ...]

## Prioritization
[MoSCoW table from Step 5]
[Value/Effort matrix placement]

## Sprint Backlog
[Sprint planning table from Step 6]

## Definition of Done
- [ ] Code complete and reviewed
- [ ] Unit tests passing
- [ ] Acceptance criteria verified
- [ ] No regressions in existing tests
- [ ] Deployed to staging environment

Completion

User Story Generator: Complete!

Epics: [Count]
Total stories: [Count]
Must-have: [Count] ([X] points)
Should-have: [Count] ([X] points)
Could-have: [Count] ([X] points)
Total story points: [X]
Sprint capacity needed: [X sprints]

Next steps:
1. Review stories with the team (estimation poker)
2. Validate acceptance criteria with QA
3. Resolve any dependency blockers
4. Commit to Sprint [X] backlog
5. Create tasks/subtasks in project management tool

Level History

  • Lv.1: Base: Epic/theme identification, story map layout, story template (As a/I want to/So that), Given/When/Then acceptance criteria, Fibonacci story points with estimation heuristic, spike story template, MoSCoW prioritization, value/effort matrix, sprint backlog organization with capacity planning, definition of done checklist. (Origin: MemStack Pro v3.2, Mar 2026)

Frequently asked questions

What does the Memstack Product User Story Generator AI skill do?

Use this skill when the user says 'user stories', 'write stories', 'backlog', 'sprint planning', 'acceptance criteria', or needs prioritized stories with Given/When/Then criteria and story point estimates. Do NOT use for full PRDs or detailed feature specs.

Why use Memstack Product User Story Generator on TypingMind?

Because you install it once and use it with any model. Memstack Product User Story Generator is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Memstack Product User Story Generator in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/cwinvestments/memstack/tree/master/skills/product/user-story-generator. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Memstack Product User Story Generator?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Memstack Product User Story Generator?

As many as you like. As long as a model supports skills, you can use Memstack Product User Story Generator with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Memstack Product User Story Generator AI skill free?

Yes. It is published on GitHub by cwinvestments under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇