| name | ai-pm-story |
| description | 用户故事编写技能。基于需求分析和竞品研究,编写详细的用户故事和验收标准。 当用户说「写用户故事」「用户故事拆解」「验收标准」「功能场景拆解」「需求拆解」 「用例编写」「As a user」「Given When Then」「故事点」时,立即使用此技能。 |
| argument-hint | [分析报告路径 | 功能描述] |
| allowed-tools | Read Write Edit Bash(mkdir) Bash(ls) |
用户故事编写
输入
- 主要:
{项目目录}/02-analysis-report/(最新 V,需求分析)
- 参考:
{项目目录}/03-competitor-report/V{版本}.md(竞品研究,如有)
输出
所有项目统一用文件夹结构:{项目目录}/04-user-stories/V{当前版本}.md + frontmatter(version / status / phase=用户故事 / upstream-from / created)。
落盘前强制步骤:
- 查
05-prd/README.md 当前活跃版本号
- 确认
04-user-stories/ 文件夹存在;不存在则 mkdir
- 临界点检查:如果文件夹外存在旧版
04-user-stories.md(或 -V1.md 等 v1 后缀文件)→ 先 mv 到 04-user-stories/V1.md 并补 V1 frontmatter
- 写入
04-user-stories/V{当前版本}.md + frontmatter
- 同步 patch 根 README「上游产物版本归属」表
详见 templates/project-index/README.md 「0x 上游产物文件夹约定」段。
执行步骤
步骤1:读取分析文档,规划模块
从需求分析中提取用户角色、核心功能、优先级,划分 Epic 模块。
步骤2:询问用户补充特殊场景
基于需求分析,计划编写以下模块的用户故事:
{模块列表}
在开始前,有什么特殊场景需要覆盖?例如:
- 网络异常时的处理(断网、超时)
- 用户误操作容错(误删、误提交)
- 权限相关限制(无权限、权限变更)
- 数据边界情况(空值、超长、特殊字符)
请告诉我,或回复"按标准编写"。
步骤3:编写用户故事
标准格式:
作为 [用户角色],
我想要 [功能/能力],
以便 [价值/目标]。
每个故事必须包含:
- 故事编号:US-{模块缩写}-{序号}(如 US-AUTH-001)
- 优先级:P0/P1/P2
- 验收标准:中文三段式(前提 / 操作 / 预期),覆盖正常流程、异常流程、边界情况——禁用 Given/When/Then 英文句式(2026-07-03 用户拍板;PRD 会以本文档为骨架,英文腔会回灌进 PRD 验收标准)
按功能模块分组,同模块内按优先级排序(P0 先)。
步骤4:输出汇总表
完成后输出故事优先级矩阵,便于迭代规划。
输出格式
# 用户故事文档
## 1. 用户角色定义
| 角色ID | 角色名称 | 描述 | 使用频率 |
|-------|---------|------|---------|
| R01 | {角色名} | {描述} | 高/中/低 |
## 2. Epic 与用户故事
### Epic 1: {模块名称}
**描述**:{模块功能概述}
#### US-{MOD}-001: {故事标题}
**用户故事**:
作为 {角色},
我想要 {功能},
以便 {价值}。
**优先级**:P0
**前置条件**:{条件列表}
**验收标准**:
- 正常流程:前提 {前提条件};操作 {用户操作};预期 {预期结果}
- 异常流程:前提 {异常前提};操作 {用户操作};预期 {错误处理——落到页面状态,用户在哪看到什么}
- 边界情况:前提 {边界条件};操作 {用户操作};预期 {预期行为}
**UI/UX 说明**:{相关设计要点}
**技术备注**:{实现注意事项,如有}
---
#### US-{MOD}-002: {故事标题}
{同上格式}
---
### Epic 2: {模块名称}
{同上结构}
## 3. 故事优先级矩阵
| 故事ID | Epic | 优先级 | 故事点 | 依赖 | 计划迭代 |
|-------|------|-------|-------|------|---------|
| US-XXX-001 | Epic1 | P0 | 3 | 无 | Sprint 1 |
| US-XXX-002 | Epic1 | P0 | 5 | US-XXX-001 | Sprint 1 |
| US-YYY-001 | Epic2 | P1 | 2 | 无 | Sprint 2 |
**汇总:** 共 {N} 个故事,P0: {n},P1: {n},P2: {n}
## 4. 非功能性需求
**性能**:{页面加载/接口响应时间要求}
**安全**:{权限、加密等要求}
**兼容性**:{浏览器/设备支持范围}
## 5. 待澄清问题
| 序号 | 问题 | 状态 |
|-----|------|------|
| 1 | {问题描述} | 待确认 |