理解需求 (Understand Requirement)
本 skill 是标准开发流程的第 1 步:在动手之前先弄清楚需求或问题,确保理解无偏差。
执行规则
1. 复述需求
- 收到需求后,不要急着动手,先用一段话复述你对需求的理解,列出"我理解你要做的是…"
- 让用户确认或纠正
2. 主动提问
- 对于模糊的地方,主动列出疑问清单(不要等用户补充),一次问完,避免来回拉扯
- 提问前先询问用户:"需求是否已经足够清晰?如果是,可以跳过提问直接进入下一步"
3. 区分需求类型
- 新功能开发 → 重点问业务目标、用户场景
- Bug 修复 → 重点问复现步骤、期望行为 vs 实际行为
- 重构/优化 → 重点问当前痛点、可接受的改动范围
4. 强制输出"需求确认卡"
无论是否跳过提问,最终都强制输出一个结构化的"需求确认卡"给用户确认,卡内至少包含:
| 字段 | 说明 |
|---|---|
| 需求概述 | 一句话概括要做什么 |
| 输入 | 需求的输入是什么 |
| 输出 | 期望的输出 / 结果是什么 |
| 边界与约束 | 限制条件、不能碰的部分等 |
| 验收标准 | 初步约定做成什么样算完成 |
| 类型 | 新功能 / Bug 修复 / 重构优化 |
5. 确认门禁
- 用户确认"需求确认卡"无误后,才允许进入下一步(看代码)
- 用户提出修改 → 更新确认卡 → 再次确认,循环直到通过
输出格式示例
## 需求确认卡
- 需求概述:xxx
- 输入:xxx
- 输出:xxx
- 边界与约束:xxx
- 验收标准:xxx
- 类型:新功能 / Bug 修复 / 重构优化
请确认以上理解是否准确,有需要修改的地方请直接指出。
注意事项
- 不要凭猜测往下走,理解偏差会导致后面全部返工
- 验收标准在此时只是初步约定,后续看代码、出方案时可以细化
- 这一卡的结论会作为后续看代码、出方案、拆 Task 的基础