- Prettier 配置迁移为 .prettierrc.cjs,解决 ESM/CJS 兼容问题 - 优化 package.json,补全元信息、整理依赖、完善 Bun 热更新脚本 - 归档项目初始化 PRD 与任务清单到 tasks/archive,并加日期前缀 - 同步代码风格与格式化配置,提升团队协作一致性 归档文件:tasks/archive/20240610-prd-项目初始化.md, tasks/archive/20240610-tasks-prd-项目初始化.md
54 lines
3.0 KiB
Plaintext
54 lines
3.0 KiB
Plaintext
---
|
||
description:
|
||
globs:
|
||
alwaysApply: true
|
||
---
|
||
# 规则:从PRD生成任务清单
|
||
|
||
## 目标 (Goal)
|
||
|
||
指导AI助手基于现有的产品需求文档(PRD)创建一个详细的、逐步执行的任务清单(Markdown格式)。该任务清单应指导开发人员进行实现。
|
||
|
||
## 输出 (Output)
|
||
|
||
* **格式:** Markdown (`.md`)
|
||
* **位置:** `/tasks/`
|
||
* **文件名:** `tasks-[prd文件名].md` (例如:`tasks-prd-user-profile-editing.md`)
|
||
|
||
## 流程 (Process)
|
||
|
||
1. **接收PRD引用:** 用户指定一个特定的PRD文件。
|
||
2. **分析PRD:** AI阅读并分析指定PRD中的功能需求、用户故事和其他部分。
|
||
3. **阶段1:生成父任务:** 基于PRD分析,创建文件并生成实现该功能所需的主要、高级别任务。根据你的判断决定使用多少高级别任务(大约5个)。以指定格式(尚未包含子任务)将这些任务呈现给用户。通知用户:“我已根据PRD生成了高级别任务。准备好生成子任务了吗?请回复 'Go' 以继续。”
|
||
4. **等待确认:** 暂停并等待用户回复“Go”。
|
||
5. **阶段2:生成子任务:** 一旦用户确认,将每个父任务分解为完成父任务所需的更小、可操作的子任务。确保子任务逻辑上源自父任务,并涵盖PRD中隐含的实现细节。
|
||
6. **识别相关文件:** 基于任务和PRD,识别需要创建或修改的潜在文件。在 `Relevant Files` 部分列出这些文件,如果适用,包括对应的测试文件。
|
||
7. **生成最终输出:** 将父任务、子任务、相关文件和备注合并到最终的Markdown结构中。
|
||
8. **保存任务清单:** 将生成的文档保存在 `/tasks/` 目录中,文件名为 `tasks-[prd文件名].md`,其中 `[prd文件名]` 与输入PRD文件的基本名称匹配(例如,如果输入是 `prd-user-profile-editing.md`,则输出为 `tasks-prd-user-profile-editing.md`)。
|
||
|
||
## 输出格式 (Output Format)
|
||
|
||
生成的任务清单*必须*遵循以下结构:
|
||
|
||
```markdown
|
||
## 相关文件 (Relevant Files)
|
||
|
||
- `path/to/potential/file1.ts` - 该文件相关性的简要说明(例如:包含此功能的主要组件)。
|
||
- `path/to/file1.test.ts` - `file1.ts` 的单元测试。
|
||
- `path/to/another/file.tsx` - 简要说明(例如:用于数据提交的API路由处理器)。
|
||
- `path/to/another/file.test.tsx` - `another/file.tsx` 的单元测试。
|
||
- `lib/utils/helpers.ts` - 简要说明(例如:计算所需的工具函数)。
|
||
- `lib/utils/helpers.test.ts` - `helpers.ts` 的单元测试。
|
||
|
||
### 备注 (Notes)
|
||
|
||
- 单元测试通常应放置在与它们测试的代码文件相同的目录中(例如:在同一目录下的 `MyComponent.tsx` 和 `MyComponent.test.tsx`)。
|
||
|
||
## 任务 (Tasks)
|
||
|
||
- [ ] 1.0 父任务标题
|
||
- [ ] 1.1 [子任务描述 1.1]
|
||
- [ ] 1.2 [子任务描述 1.2]
|
||
- [ ] 2.0 父任务标题
|
||
- [ ] 2.1 [子任务描述 2.1]
|
||
- [ ] 3.0 父任务标题 (如果纯粹是结构性的或配置性的,则可能不需要子任务) |