UX Journey Definition
Overview
Create one canonical artifact, experience-story.md, that captures the product story, main journey, screen-by-screen behavior, and transition mapping. This is the upstream input for $product-ui-prototyping.
The artifact must also encode cognition-first decisions so flow order and interaction density reduce user burden.
Default Output
ui-prototypes/<prototype-name>/experience-story.md
- If the user specifies a different path, follow the user path.
Workflow
Audible Notifications (Speak Tool, Required)
- Use the
Speak tool for key stage-boundary updates so the user does not need to watch the screen continuously.
- Hard rule: speak at both stage start and stage completion for each key stage below (no selective skipping).
- Required speak stages:
- workflow kickoff (
prototype context acknowledged, next stage),
- product story + main journey stage (
started, then draft completed),
- cognitive load criteria stage (
started, then criteria drafted),
- screen stories + alternate/error paths stage (
started, then draft completed),
- transition index stage (
started, then index completed),
- canonical artifact write stage (
started, then experience-story.md written/updated),
- quality gate stage (
started, then Pass/Needs fixes result),
- handoff-ready stage for
$product-ui-prototyping (started, then ready status).
- Speak trigger policy:
- do not skip required stage-boundary speak events,
- for completion events, speak only after milestone content is physically written,
- do not speak for partial drafts between required stage-boundary events,
- batch close-together milestone updates into one short message.
- Keep each spoken message short (1-2 sentences), status-first, with one clear next step.
- If the
Speak tool fails or is unavailable, continue workflow and provide the same update in text.
- Do not speak secrets, tokens, or full sensitive payloads.
1) Capture Product Story
Write one short paragraph:
- who the user is,
- what they are trying to achieve,
- what success looks like.
Keep this concrete and product-facing.
- Speak completion after product story draft is physically written.
2) Write Main Journey (Happy Path)
Write a numbered flow from entry to success.
Each step should include:
- what the user does,
- what the system does,
- which
screen_id is involved.
Prioritize one critical flow first before expanding.
- Speak completion after main journey draft is physically written.
3) Define Cognitive Load Criteria (Required)
Before writing detailed screen behavior, define a short cognition-first rubric for this product:
- learning order strategy (what comes first and why),
- connection strategy (group by semantic/stem linkage where possible),
- chunking limits (items per step/screen),
- interference controls (what confusing patterns are delayed),
- progression policy (when to unlock complexity).
Keep this practical and measurable so it can be used as a review gate.
- Speak completion after cognitive-load criteria are physically written.
4) Write Screen Stories
For each screen, describe behavior in plain language with stable IDs.
Required shape:
screen_id
- user arrives from
- user sees
- user can do (
action_id)
- system behavior for each action
- cognitive objective (what mental burden this screen reduces)
- cognition controls (chunking, progressive disclosure, contrast/clarity choices)
- states to prototype (
default, loading, success, error, empty when applicable)
- Speak completion after screen stories are physically written.
5) Capture Alternate/Error Paths
Document only meaningful branches:
- validation failures,
- empty/no-results states,
- recoverable errors.
For each branch, state:
- trigger/condition,
- what user sees,
- recovery action and destination.
- Speak completion after alternate/error paths are physically written.
6) Build Transition Index
Create a single transition table that links interactions to movement.
Columns:
transition_id
trigger
from_screen
to_screen
expected_feedback
Use IDs consistently across the whole document.
- Speak completion after the transition index is physically written.
7) Record Blocking Questions
List only blockers that can change behavior or flow.
Do not include cosmetic/open-ended discussion items.
Canonical Artifact Template
Use this structure in experience-story.md:
# Experience Story: <prototype-name>
## 1) Product Story
<one short paragraph>
## 2) Main Journey
1. ...
2. ...
## 3) Cognitive Load Criteria
- Learning order: ...
- Connection strategy: ...
- Chunking limit: ...
- Interference control: ...
- Progression policy: ...
## 4) Screen Stories
### screen_id: <screen_id>
- User arrives from: ...
- User sees:
- ...
- ...
- User can do:
- `<action_id>`: ...
- System behavior:
- when `<action_id>` -> <feedback> -> go to `<next_screen_id>`
- Cognitive objective: ...
- Cognition controls:
- chunking: ...
- progressive disclosure: ...
- clarity guardrails: ...
- States to prototype: default, loading, success, error, empty
## 5) Alternate And Error Paths
- If <condition>, show <state/message>, then user can <recovery action>.
## 6) Transition Index
| transition_id | trigger | from_screen | to_screen | expected_feedback |
| --- | --- | --- | --- | --- |
| ... | ... | ... | ... | ... |
## 7) Blocking Questions
- <question> (owner: <name>)
Practical Rules
- Keep it practical and short. Avoid heavy theory.
- No
out-of-scope section by default.
- Focus on behavior and navigation, not design tokens.
- Keep each screen section to 5-8 bullets.
- Every action must define both feedback and next destination.
Quality Gate
- One clear happy path exists from entry to success.
- Every major trigger maps to a target screen/state.
- Screen IDs and transition IDs are consistent.
- Error and empty states include recovery actions.
- The learning sequence explicitly minimizes cognitive burden (simple -> connected -> complex).
- Early modules prioritize semantic/stem-connected content before higher-interference pattern groups.
- Each screen declares its cognitive objective and concrete burden-control mechanisms.
- The document can be directly used by
$product-ui-prototyping.
- Speak quality-gate result after validation completes.
Handoff To Prototyping
When visual prototyping is requested next, invoke $product-ui-prototyping with:
ui-prototypes/<prototype-name>/experience-story.md
- product constraints from this document
- chosen platform (
web, ios, android)
Then generate state images, flow maps, and viewer artifacts based on the transition index and screen stories.
- Speak handoff-ready completion after
experience-story.md is written/updated.
1---2name: ux-journey-definition3description: Define a practical, story-first product experience before UI prototyping. Use when you need one canonical artifact that explains what users see, what they can do, and how screens transition.4---56# UX Journey Definition78## Overview910Create one canonical artifact, `experience-story.md`, that captures the product story, main journey, screen-by-screen behavior, and transition mapping. This is the upstream input for `$product-ui-prototyping`.11The artifact must also encode cognition-first decisions so flow order and interaction density reduce user burden.1213## Default Output1415- `ui-prototypes/<prototype-name>/experience-story.md`16- If the user specifies a different path, follow the user path.1718## Workflow1920### Audible Notifications (Speak Tool, Required)2122- Use the `Speak` tool for key stage-boundary updates so the user does not need to watch the screen continuously.23- Hard rule: speak at both stage start and stage completion for each key stage below (no selective skipping).24- Required speak stages:25 - workflow kickoff (`prototype context acknowledged`, `next stage`),26 - product story + main journey stage (`started`, then draft completed),27 - cognitive load criteria stage (`started`, then criteria drafted),28 - screen stories + alternate/error paths stage (`started`, then draft completed),29 - transition index stage (`started`, then index completed),30 - canonical artifact write stage (`started`, then `experience-story.md` written/updated),31 - quality gate stage (`started`, then `Pass`/`Needs fixes` result),32 - handoff-ready stage for `$product-ui-prototyping` (`started`, then ready status).33- Speak trigger policy:34 - do not skip required stage-boundary speak events,35 - for completion events, speak only after milestone content is physically written,36 - do not speak for partial drafts between required stage-boundary events,37 - batch close-together milestone updates into one short message.38- Keep each spoken message short (1-2 sentences), status-first, with one clear next step.39- If the `Speak` tool fails or is unavailable, continue workflow and provide the same update in text.40- Do not speak secrets, tokens, or full sensitive payloads.4142### 1) Capture Product Story4344Write one short paragraph:45- who the user is,46- what they are trying to achieve,47- what success looks like.4849Keep this concrete and product-facing.50- Speak completion after product story draft is physically written.5152### 2) Write Main Journey (Happy Path)5354Write a numbered flow from entry to success.55Each step should include:56- what the user does,57- what the system does,58- which `screen_id` is involved.5960Prioritize one critical flow first before expanding.61- Speak completion after main journey draft is physically written.6263### 3) Define Cognitive Load Criteria (Required)6465Before writing detailed screen behavior, define a short cognition-first rubric for this product:66- learning order strategy (what comes first and why),67- connection strategy (group by semantic/stem linkage where possible),68- chunking limits (items per step/screen),69- interference controls (what confusing patterns are delayed),70- progression policy (when to unlock complexity).7172Keep this practical and measurable so it can be used as a review gate.73- Speak completion after cognitive-load criteria are physically written.7475### 4) Write Screen Stories7677For each screen, describe behavior in plain language with stable IDs.7879Required shape:80- `screen_id`81- user arrives from82- user sees83- user can do (`action_id`)84- system behavior for each action85- cognitive objective (what mental burden this screen reduces)86- cognition controls (chunking, progressive disclosure, contrast/clarity choices)87- states to prototype (`default`, `loading`, `success`, `error`, `empty` when applicable)88- Speak completion after screen stories are physically written.8990### 5) Capture Alternate/Error Paths9192Document only meaningful branches:93- validation failures,94- empty/no-results states,95- recoverable errors.9697For each branch, state:98- trigger/condition,99- what user sees,100- recovery action and destination.101- Speak completion after alternate/error paths are physically written.102103### 6) Build Transition Index104105Create a single transition table that links interactions to movement.106107Columns:108- `transition_id`109- `trigger`110- `from_screen`111- `to_screen`112- `expected_feedback`113114Use IDs consistently across the whole document.115- Speak completion after the transition index is physically written.116117### 7) Record Blocking Questions118119List only blockers that can change behavior or flow.120Do not include cosmetic/open-ended discussion items.121122## Canonical Artifact Template123124Use this structure in `experience-story.md`:125126```markdown127# Experience Story: <prototype-name>128129## 1) Product Story130<one short paragraph>131132## 2) Main Journey1331. ...1342. ...135136## 3) Cognitive Load Criteria137- Learning order: ...138- Connection strategy: ...139- Chunking limit: ...140- Interference control: ...141- Progression policy: ...142143## 4) Screen Stories144145### screen_id: <screen_id>146- User arrives from: ...147- User sees:148 - ...149 - ...150- User can do:151 - `<action_id>`: ...152- System behavior:153 - when `<action_id>` -> <feedback> -> go to `<next_screen_id>`154- Cognitive objective: ...155- Cognition controls:156 - chunking: ...157 - progressive disclosure: ...158 - clarity guardrails: ...159- States to prototype: default, loading, success, error, empty160161## 5) Alternate And Error Paths162- If <condition>, show <state/message>, then user can <recovery action>.163164## 6) Transition Index165| transition_id | trigger | from_screen | to_screen | expected_feedback |166| --- | --- | --- | --- | --- |167| ... | ... | ... | ... | ... |168169## 7) Blocking Questions170- <question> (owner: <name>)171```172173## Practical Rules174175- Keep it practical and short. Avoid heavy theory.176- No `out-of-scope` section by default.177- Focus on behavior and navigation, not design tokens.178- Keep each screen section to 5-8 bullets.179- Every action must define both feedback and next destination.180181## Quality Gate182183- One clear happy path exists from entry to success.184- Every major trigger maps to a target screen/state.185- Screen IDs and transition IDs are consistent.186- Error and empty states include recovery actions.187- The learning sequence explicitly minimizes cognitive burden (simple -> connected -> complex).188- Early modules prioritize semantic/stem-connected content before higher-interference pattern groups.189- Each screen declares its cognitive objective and concrete burden-control mechanisms.190- The document can be directly used by `$product-ui-prototyping`.191- Speak quality-gate result after validation completes.192193## Handoff To Prototyping194195When visual prototyping is requested next, invoke `$product-ui-prototyping` with:196- `ui-prototypes/<prototype-name>/experience-story.md`197- product constraints from this document198- chosen platform (`web`, `ios`, `android`)199200Then generate state images, flow maps, and viewer artifacts based on the transition index and screen stories.201- Speak handoff-ready completion after `experience-story.md` is written/updated.