User Story Mapping
Activation Contract
Use this skill to interactively create a User Story Map for a raw idea, PRD, PRD Light, RFC, issue, notes, or other product context. Raw ideas are first-class input. Existing artifacts are initial context only; validate the story map structure through the interview.
Always read assets/usm-template.md at the start of the session and use it as the final artifact skeleton.
Hard Rules
- Ask one focused question at a time, then stop and wait for the user's answer.
- Ask open-ended questions directly in normal chat; use the
question tool only for a closed confirmation or enumerated choice.
- Add
Recommendation: ... only when it helps the user respond. Do not add question headings, numbering, rationale blocks, or interview-length estimates.
- Use one adaptive-depth flow: ask more when context is thin, and move faster when strong PRD, RFC, issue, or notes are provided.
- With strong source input, summarize and confirm instead of re-asking already answered questions, but still validate every structural minimum in Closure Criteria.
- Show partial summaries at phase boundaries, not after every question.
- Do not produce the final Markdown or Mermaid until Closure Criteria are met, even if the user says "generate now".
- Block only on structural gaps; use clearly marked assumptions for minor unknowns.
- Build the story map journey-first, not feature-first; add the User Journey Map as discovery/context, not as a replacement for the story map.
- Treat phases/activities as high-level journey stages, not UI screens or implementation steps; capture actions as narrative user actions, not click-by-click logs.
- If the user gives features, ask where each feature lives in the user journey before accepting it into the map.
- Do not accept a flat feature list as the map structure.
- Map cards are concise user tasks, not full
As a/I want/so that stories.
- Candidate stories are optional output only when explicitly useful or requested; they are never required for validation.
- Support multiple actors, but require one Primary Actor. Treat secondary actors as variants, constraints, or important perspectives.
- Use one point of view per User Journey Map: one Primary Actor in one scenario.
- Mark the User Journey Map as current-state, future-state, or hypothesis. If evidence is thin, label assumptions clearly.
- Require an MVP Slice as the first end-to-end walking skeleton. Later release slices are optional, but when present they must also be vertical journey slices, not scope buckets.
- Replace every visible template label before final output, including Mermaid labels like
{Activity 1} or {MVP task from Activity 1}; structural node IDs may remain.
- Default to print-only output. Do not save files unless the user explicitly asks.
- If saving is requested, suggest
docs/usm/{product-or-feature-name}-usm.md and wait for confirmation before writing.
- Use the conversation language for the final artifact unless the user explicitly asks for another language.
Conversation Format
Use this minimal shape for open interview questions:
[Direct question]
Recommendation: [short recommended/default answer when useful]
Omit the recommendation line when it adds no value.
Decision Gates
| Situation |
Action |
| Missing product or feature goal |
Ask what outcome the story map should support. |
| Missing Primary Actor |
Stop and ask which actor is the primary journey owner. |
| Multiple actors compete for priority |
Ask which actor anchors the map; record others as secondary actors. |
| Missing scenario |
Ask what scenario the Primary Actor is in. |
| Missing expectations after scenario is known |
Ask what the Primary Actor expects to accomplish or experience. |
| Missing journey evidence or state |
Ask whether the journey is current-state, future-state, or hypothesis, and what evidence or assumptions support it. |
| Input is a feature list |
Ask where each feature belongs in the user journey before mapping tasks. |
| Journey has fewer than 3 activities |
Ask for the before, during, and after high-level journey stages until at least 3 activities exist. |
| Activities have no user tasks |
Ask what the Primary Actor does under each activity. |
| MVP Slice is missing |
Stop and ask which tasks form the first end-to-end walking skeleton. |
| User asks to generate early |
Explain that minimum structure is incomplete, ask the next blocking question, then wait. |
| Minor detail is unknown |
Mark it as an assumption, risk, or open question and continue. |
Execution Phases
- Intake: identify the product or feature, available context, artifact language, and whether the user expects print-only output or explicitly wants a saved file; ask only one missing item at a time.
- Goal and Actors: capture the goal, Primary Actor, and secondary actors or variants.
- Scenario and Evidence: capture scenario first, then expectations only if still missing; then capture journey state, source evidence, and assumptions.
- Journey Backbone: define at least 3 sequential high-level phases/activities from start to finish, not screens or implementation steps.
- Journey Context: capture phase-level narrative actions, mindsets or emotions, pain points, and opportunities.
- User Tasks: capture concise user tasks under each main activity.
- Slice Planning: select the mandatory MVP Slice as the first end-to-end walking skeleton; add later vertical journey slices only when useful.
- Review: walk the map left-to-right as the Primary Actor's story to find missing steps, then briefly review open questions, risks, assumptions, and structural completeness.
- Closure: generate one final Markdown artifact using
assets/usm-template.md, with Mermaid embedded inline.
At each phase boundary, provide a compact summary and ask the next phase's first question.
Closure Criteria
- Goal is explicit and outcome-oriented.
- One Primary Actor is named.
- Secondary actors, if any, are marked as variants or constraints.
- User Journey Map is explicit and includes actor, scenario, expectations, journey state, high-level phases, narrative actions, mindsets or emotions, opportunities, and evidence or assumptions.
- Journey state is marked as current-state, future-state, or hypothesis.
- User Journey has at least 3 activities in sequence.
- Each main activity has user tasks beneath it.
- User tasks are concise actions, not full user stories or implementation tasks.
- MVP Slice includes at least one meaningful task from each critical part of the journey and can be understood as the first end-to-end walking skeleton.
- Open Questions, Risks, and Assumptions are briefly reviewed before final output.
- Final output includes Open Questions, Risks, Assumptions, and Next Steps sections.
Output Contract
Return exactly one complete Markdown artifact in chat or CLI by default. Embed Mermaid inline in the artifact.
The primary diagram must be a Mermaid flowchart LR using subgraphs for activities. Stack tasks top-to-bottom inside each activity. Use class definitions or colors to distinguish MVP from later releases. Add an optional Mermaid journey diagram only when it is useful and enough phase/emotion data exists; never use it as the full User Journey Map because the table carries the required context.
For Later Release Slices, output either a table of vertical journey slices or None planned yet; defer until MVP learning is reviewed.
The final artifact must include:
- Title and metadata.
- Goal and context.
- Actors.
- User Journey Map.
- User Journey Backbone.
- User Tasks by Activity.
- Slice Plan with mandatory MVP Slice.
- Mermaid Story Map using
flowchart LR.
- Open Questions.
- Risks.
- Assumptions.
- Next Steps that suggest converting the MVP Slice to issues without creating issues automatically.
Replace every {...} placeholder with artifact content before returning the final artifact. Never leave placeholder rows, unused optional sections, template guidance, or instructional notes in the final artifact. Use TBD only for intentionally skipped non-blocking details.
References
assets/usm-template.md — User Story Map output template.
1---2name: usm3description: Trigger: USM, user story map, story map, mapa de historias, MVP slice. Create journey-first story maps with MVP slicing and Mermaid output.4license: MIT5---67# User Story Mapping89## Activation Contract1011Use this skill to interactively create a User Story Map for a raw idea, PRD, PRD Light, RFC, issue, notes, or other product context. Raw ideas are first-class input. Existing artifacts are initial context only; validate the story map structure through the interview.1213Always read `assets/usm-template.md` at the start of the session and use it as the final artifact skeleton.1415## Hard Rules1617- Ask one focused question at a time, then stop and wait for the user's answer.18- Ask open-ended questions directly in normal chat; use the `question` tool only for a closed confirmation or enumerated choice.19- Add `Recommendation: ...` only when it helps the user respond. Do not add question headings, numbering, rationale blocks, or interview-length estimates.20- Use one adaptive-depth flow: ask more when context is thin, and move faster when strong PRD, RFC, issue, or notes are provided.21- With strong source input, summarize and confirm instead of re-asking already answered questions, but still validate every structural minimum in Closure Criteria.22- Show partial summaries at phase boundaries, not after every question.23- Do not produce the final Markdown or Mermaid until Closure Criteria are met, even if the user says "generate now".24- Block only on structural gaps; use clearly marked assumptions for minor unknowns.25- Build the story map journey-first, not feature-first; add the User Journey Map as discovery/context, not as a replacement for the story map.26- Treat phases/activities as high-level journey stages, not UI screens or implementation steps; capture actions as narrative user actions, not click-by-click logs.27- If the user gives features, ask where each feature lives in the user journey before accepting it into the map.28- Do not accept a flat feature list as the map structure.29- Map cards are concise user tasks, not full `As a/I want/so that` stories.30- Candidate stories are optional output only when explicitly useful or requested; they are never required for validation.31- Support multiple actors, but require one Primary Actor. Treat secondary actors as variants, constraints, or important perspectives.32- Use one point of view per User Journey Map: one Primary Actor in one scenario.33- Mark the User Journey Map as current-state, future-state, or hypothesis. If evidence is thin, label assumptions clearly.34- Require an MVP Slice as the first end-to-end walking skeleton. Later release slices are optional, but when present they must also be vertical journey slices, not scope buckets.35- Replace every visible template label before final output, including Mermaid labels like `{Activity 1}` or `{MVP task from Activity 1}`; structural node IDs may remain.36- Default to print-only output. Do not save files unless the user explicitly asks.37- If saving is requested, suggest `docs/usm/{product-or-feature-name}-usm.md` and wait for confirmation before writing.38- Use the conversation language for the final artifact unless the user explicitly asks for another language.3940## Conversation Format4142Use this minimal shape for open interview questions:4344```markdown45[Direct question]4647Recommendation: [short recommended/default answer when useful]48```4950Omit the recommendation line when it adds no value.5152## Decision Gates5354| Situation | Action |55| --- | --- |56| Missing product or feature goal | Ask what outcome the story map should support. |57| Missing Primary Actor | Stop and ask which actor is the primary journey owner. |58| Multiple actors compete for priority | Ask which actor anchors the map; record others as secondary actors. |59| Missing scenario | Ask what scenario the Primary Actor is in. |60| Missing expectations after scenario is known | Ask what the Primary Actor expects to accomplish or experience. |61| Missing journey evidence or state | Ask whether the journey is current-state, future-state, or hypothesis, and what evidence or assumptions support it. |62| Input is a feature list | Ask where each feature belongs in the user journey before mapping tasks. |63| Journey has fewer than 3 activities | Ask for the before, during, and after high-level journey stages until at least 3 activities exist. |64| Activities have no user tasks | Ask what the Primary Actor does under each activity. |65| MVP Slice is missing | Stop and ask which tasks form the first end-to-end walking skeleton. |66| User asks to generate early | Explain that minimum structure is incomplete, ask the next blocking question, then wait. |67| Minor detail is unknown | Mark it as an assumption, risk, or open question and continue. |6869## Execution Phases70711. Intake: identify the product or feature, available context, artifact language, and whether the user expects print-only output or explicitly wants a saved file; ask only one missing item at a time.722. Goal and Actors: capture the goal, Primary Actor, and secondary actors or variants.733. Scenario and Evidence: capture scenario first, then expectations only if still missing; then capture journey state, source evidence, and assumptions.744. Journey Backbone: define at least 3 sequential high-level phases/activities from start to finish, not screens or implementation steps.755. Journey Context: capture phase-level narrative actions, mindsets or emotions, pain points, and opportunities.766. User Tasks: capture concise user tasks under each main activity.777. Slice Planning: select the mandatory MVP Slice as the first end-to-end walking skeleton; add later vertical journey slices only when useful.788. Review: walk the map left-to-right as the Primary Actor's story to find missing steps, then briefly review open questions, risks, assumptions, and structural completeness.799. Closure: generate one final Markdown artifact using `assets/usm-template.md`, with Mermaid embedded inline.8081At each phase boundary, provide a compact summary and ask the next phase's first question.8283## Closure Criteria8485- Goal is explicit and outcome-oriented.86- One Primary Actor is named.87- Secondary actors, if any, are marked as variants or constraints.88- User Journey Map is explicit and includes actor, scenario, expectations, journey state, high-level phases, narrative actions, mindsets or emotions, opportunities, and evidence or assumptions.89- Journey state is marked as current-state, future-state, or hypothesis.90- User Journey has at least 3 activities in sequence.91- Each main activity has user tasks beneath it.92- User tasks are concise actions, not full user stories or implementation tasks.93- MVP Slice includes at least one meaningful task from each critical part of the journey and can be understood as the first end-to-end walking skeleton.94- Open Questions, Risks, and Assumptions are briefly reviewed before final output.95- Final output includes Open Questions, Risks, Assumptions, and Next Steps sections.9697## Output Contract9899Return exactly one complete Markdown artifact in chat or CLI by default. Embed Mermaid inline in the artifact.100101The primary diagram must be a Mermaid `flowchart LR` using subgraphs for activities. Stack tasks top-to-bottom inside each activity. Use class definitions or colors to distinguish MVP from later releases. Add an optional Mermaid `journey` diagram only when it is useful and enough phase/emotion data exists; never use it as the full User Journey Map because the table carries the required context.102103For Later Release Slices, output either a table of vertical journey slices or `None planned yet; defer until MVP learning is reviewed.`104105The final artifact must include:106107- Title and metadata.108- Goal and context.109- Actors.110- User Journey Map.111- User Journey Backbone.112- User Tasks by Activity.113- Slice Plan with mandatory MVP Slice.114- Mermaid Story Map using `flowchart LR`.115- Open Questions.116- Risks.117- Assumptions.118- Next Steps that suggest converting the MVP Slice to issues without creating issues automatically.119120Replace every `{...}` placeholder with artifact content before returning the final artifact. Never leave placeholder rows, unused optional sections, template guidance, or instructional notes in the final artifact. Use `TBD` only for intentionally skipped non-blocking details.121122## References123124- `assets/usm-template.md` — User Story Map output template.