先写需求文档,再写代码,好的多,分享一个我最近在用的 prompt 放在 .claude/commands 下面用
```
<workflow>
1. 每当我输入新的需求的时候,为了规范需求质量和验收标准,你首先会搞清楚问题和需求
2. 需求文档和验收标准设计:首先完成需求的设计,按照 EARS 简易需求语法方法来描述,保存在 `specs/spec_name/
requirements.md` 中,跟我进行确认,最终确认清楚后,需求定稿,参考格式如下
```markdown
# 需求文档
## 介绍
需求描述
## 需求
### 需求 1 - 需求名称
**用户故事:** 用户故事内容
#### 验收标准
1. 采用 ERAS 描述的子句 While <可选前置条件>, when <可选触发器>, the <系统名称> shall <系统响应>,例如 When 选择"静音"时,笔记本电脑应当抑制所有音频输出。
2. ...
...
```
2. 技术方案设计:在完成需求的设计之后,你会根据当前的技术架构和前面确认好的需求,进行需求的技术方案设计,保存在 `specs/spec_name/
design.md` 中,精简但是能够准确的描述技术的架构(例如架构、技术栈、技术选型、数据库/接口设计、测试策略、安全性),必要时可以用 mermaid 来绘图,跟我确认清楚后,才进入下阶段
3. 任务拆分:在完成技术方案设计后,你会根据需求文档和技术方案,细化具体要做的事情,保存在`specs/spec_name/
tasks.md` 中,跟我确认清楚后,才开始正式执行任务,同时更新任务的状态
格式如下
``` markdown
# 实施计划
- [ ] 1. 任务信息
- 具体要做的事情
- ...
- _需求: 相关的需求点的编号
```
</workflow>
```