From super-pm
Converts requirements into user stories for agile development. Handles epic-level and story-level writing with BDD acceptance criteria. Supports parallel generation via subagents.
How this skill is triggered — by the user, by Claude, or both
Slash command
/super-pm:pm-user-storyThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
```bash
bash "$(dirname "${BASH_SOURCE[0]}")"/check-update.sh 2>/dev/null || true
# 检查方案设计目录
mkdir -p docs/02-方案设计
# 检查前置文档
echo "📊 正在检查前置文档..."
if [ -f "docs/02-方案设计/PRD产品需求文档.md" ]; then
echo "✅ PRD文档 - 已找到"
else
echo "⏳ PRD文档 - 未找到"
fi
if [ -f "docs/02-方案设计/功能细节拆解.md" ]; then
echo "✅ 功能细节拆解 - 已找到"
else
echo "⏳ 功能细节拆解 - 未找到"
fi
使用 AskUserQuestion 询问:
您需要编写哪方面的用户故事?
A) 全部功能用户故事(基于PRD功能列表) B) 单个模块的用户故事(请指定模块) C) 单个功能的用户故事(请指定功能) D) Epic级用户故事(高层次需求) E) 其他(请手动输入)
💡 提示:
- Sprint规划 → 推荐单个模块的用户故事
- 产品规划 → 推荐Epic级用户故事
- 开发准备 → 推荐全部功能用户故事
记录到变量 STORY_SCOPE
根据范围读取相应文档:
必需文档:
可选文档:
读取失败处理:
如果 PRD 文档不存在:
⚠️ 未找到 PRD 文档
用户故事需要明确的功能需求作为输入。
您可以选择: A) 执行 /pm-docs 生成 PRD B) 使用功能细节拆解作为输入 C) 手动输入功能需求(快速模式)
📝 用户故事标准格式:
作为 <角色> 我想要 <功能> 以便于 <价值>验收标准(BDD格式):
GIVEN <前置条件> WHEN <触发操作> THEN <预期结果>是否继续编写?
A) 理解了,开始编写 B) 我需要更多示例 C) 我有特定的编写规范
基于PRD识别出Epic:
| Epic ID | Epic名称 | 描述 | 包含Story数 |
|---|---|---|---|
| E001 | 用户管理 | 用户注册、登录、信息管理 | 5 |
| E002 | 商品浏览 | 商品列表、搜索、详情 | 4 |
| E003 | 购物车管理 | 加入购物车、编辑、结算 | 3 |
| E004 | 订单管理 | 订单创建、支付、查看 | 6 |
是否需要调整Epic划分?
A) 划分合理,继续 B) 需要调整 C) 我有其他划分方式
对每个Epic进行描述:
**Epic: E001 用户管理**
作为 产品系统
我想要 提供用户管理功能
以便于 用户可以注册登录,管理个人信息
业务价值:
- 用户可以拥有个人账号
- 支持个性化服务
- 提供用户数据用于数据分析
包含Story:US001-US005
优先级:P0
预估工时:5人天
逐个对每个Epic确认后继续。
对每个功能,按以下模板编写用户故事:
US001: 用户注册
作为 新用户 我想要 通过手机号注册账号 以便于 拥有个人账号,享受个性化服务验收标准 - 场景1:正常注册
GIVEN 用户未注册过,打开注册页面 WHEN 用户输入手机号、验证码、密码,点击"注册" THEN 创建账号成功,自动登录,跳转到首页场景2:手机号已注册
GIVEN 手机号已注册 WHEN 用户输入该手机号 THEN 提示"已注册,请直接登录"场景3:验证码错误
GIVEN 用户已获取验证码 WHEN 输入错误验证码 THEN 提示"验证码错误",允许重新输入技术备注:验证码5分钟有效,密码bcrypt加密 依赖:无 风险:验证码发送失败 → 提供邮箱注册备选
这个用户故事是否完整?
A) 完整,继续下一个Story B) 需要调整 C) 需要补充更多场景
逐个Story编写,直到功能列表完成。
如果有大量Story(>10个),使用 Agent 工具并行生成:
使用 Agent 工具并行派发:
Agent 1: 编写Epic1的所有Story
- 输入:Epic1 描述 + 功能列表
- 输出:完整用户故事(含验收标准)
Agent 2: 编写Epic2的所有Story
- 输入:Epic2 描述 + 功能列表
- 输出:完整用户故事(含验收标准)
Agent 3: 编写Epic3的所有Story
- 输入:Epic3 描述 + 功能列表
- 输出:完整用户故事(含验收标准)
Agent 4: 验收标准生成
- 输入:所有 Story 列表
- 输出:每个 Story 的 BDD 验收标准
主 agent 等待所有 subagent 完成,合并汇总输出最终文档。
| 维度 | v1(串行) | v2(Subagent 并行) |
|---|---|---|
| Story 编写 | 逐个编写 | Subagent 按 Epic 并行编写 |
| 验收标准 | 手动逐条编写 | Subagent 批量生成 |
| Token 占用 | 全部 Story 占用主上下文 | Subagent 独立上下文 |
| 执行效率 | 线性顺序 | 并行 3-4x 加速 |
对于复杂的Story(Story Point > 8 或 验收标准过多),进行拆分:
🔍 Story拆分建议:
US004: 购物车管理 → 拆分为:
- US004-1: 加入购物车
- US004-2: 查看购物车
- US004-3: 编辑购物车商品数量
- US004-4: 删除购物车商品
是否接受拆分?
A) 接受拆分 B) 我有其他拆分方式 C) 不需要拆分
基于业务价值和依赖关系排序:
P0(必须有):US001注册、US002登录、US006商品列表、US008商品详情、US010加入购物车、US014订单创建、US015订单支付
P1(应该有):US003找回密码、US004个人信息、US007搜索、US011购物车编辑
P2(可以有):US008收藏、US009评价、US014取消订单
是否需要调整优先级?
使用 Write 工具创建 docs/02-方案设计/用户故事清单.md。
参考 references/output-template.md 模板,文档结构如下:
提供手动输入模式,允许用户逐个输入功能需求。
保存已编写的Story列表到草稿文件。
references/output-template.md✅ Good 示例:
- 有数据引用:「根据 Q4 数据,留存率从 35% 降至 28%」
- 有验证来源:「数据来源:Google Analytics, 2025-12-01」
- 有明确建议:「建议将新手引导步骤从 5 步减少至 3 步」
❌ Bad 示例:
- 模糊结论:「数据表明留存率有所下降」
- 无来源:「根据经验,这个功能很重要」
- 没有行动建议:「留存是个问题」
出现以下情况立即停止并回溯:
| 误区 | 正确做法 |
|---|---|
| 使用"应该"、"大概"、"看起来"做结论 | 必须基于实际数据和验证 |
| 未运行检查就声称已完成 | 先验证,再陈述 |
| 因时间紧迫跳过关键步骤 | 没有例外,时间紧更要严格 |
| "这次应该没问题"的想法 | 每次都要重新验证 |
docs/ 目录⚠️ 任何一项未通过 → 补全后再标记完成。
npx claudepluginhub konglong87/superpm --plugin super-pmBreaks PRDs or feature descriptions into implementable user stories with acceptance criteria, priorities, and notes. Use for sprint planning or engineering handoff.
Activate for: user stories, write user stories, story, as a user I want, user story map, story mapping, epic, story breakdown, story splitting, acceptance criteria for stories, BDD, given when then, story refinement, sprint stories, story writing, feature to stories, spec to stories, decompose requirements, break down PRD. NOT for: feature specifications (use official /write-spec), sprint planning (use official /sprint-planning), roadmap planning (use official /roadmap-update).
Use this skill when the user asks to "write user stories", "decompose this into user stories", "break this into stories", "write acceptance criteria for this feature", "turn this PRD into stories", "create a story map", "help me write stories for sprint planning", or has a feature or PRD and wants to decompose it into shippable units for engineering. Do NOT use this skill to write a full PRD — use prd-authoring for that.