user-storieslisted
Install: claude install-skill konwait12/pm-scaffold
# User Stories · 用户故事与范围基线
## 目的与边界(Purpose And Boundary)
把已确认的用户旅程转化为规范格式的用户故事卡片、优先级排序与范围基线(In/Out/Deferred/Conditional)。每个故事必须可追溯到旅程中的某个痛点或机会。输出独���的 `user-stories.md`,不重新设计旅程或情绪映射。
**Do not** 重新绘制旅程图(→ `user-journey`)、重新做情绪映射(→ `user-journey`)、设计功能清单(→ `feature-list`)、定义页面或交互(→ `page-design`/`interaction-rules`)。本 skill 只负责"把旅程翻译成故事 + 排优先级 + 定边界"。
## 输入与输出(Inputs And Outputs)
输入:已确认的 `user-journey.md`(角色、阶段、触点、痛点、机会)。输出:独立的 `user-stories.md`,使用 `src/templates/resolver.py user-stories.md` 解析出的模板。
分析前加载 `references/thinking-framework.md`(其中引用 `src/framework/thinking-core.md` §1 必用透镜)。起草前加载 `references/output-contract.md`。交接前加载 `references/audit-checklist.md` 与 `references/reviewer-checklist.md`。评审前运行 `scripts/validate_artifact.py <artifact> --json`。
## 思考提示词(按阶段)(Thinking Prompts per stage)
### 1. Preflight
- "已确认的旅程中,哪些痛点和机会需要转化为故事?每个故事追溯到哪个旅程节点?"
- 从 `user-journey.md` 枚举已识别的角色、阶段、痛点与机会。检查每个机会是否有足够来源支撑。
- **若没有可用旅程或机会**,返回一张路由回执并 STOP——不要进入 Intake。
- 评估成熟度:L0(无旅程)→ L1(单一角色无机会)→ L2(多角色但无优先级)→ L3(已划分优先级)→ L4(上游已确认)。
### 2. Intake
- "每个机会真正需要系统做什么——而不是我认为故事应该是什么格式?"
- 从旅程的痛点/机会逐字提取故事候选。按 `src/framework/contracts.md` 将每条分类为 `FACT`、`DECISION`、`ASSUMPTION`、`AI_INFERENCE`、`UNKNOWN` 或 `CONFLICT`。
- 保留来源 ID(旅程节点引用)。不要把不同角色的机会合并成一个故事。
### 3. Think(应用 thinking-core.md §1 必用透镜)
- **第一性原理(First Principles)**:"用户真正想达成什么可观察的结果?哪些故事伪装成了功能?"
- **系统思维(Systems Thinking)**:"哪些故事相互依赖?哪些需要先完成才能解锁其他?"
- **角色视角(Role Perspective)**:"这个故事对谁有价值?谁会因此少痛?"
- **约束分析(Constraint Analysis)**:"时间、资