-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathgenerate-tasks-from-prd.mdc
More file actions
58 lines (42 loc) · 3.18 KB
/
generate-tasks-from-prd.mdc
File metadata and controls
58 lines (42 loc) · 3.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
---
description:
globs:
alwaysApply: false
---
# Rule: Generating a Task List from a PRD
## Goal
To guide an AI assistant in creating a detailed, step-by-step task list in Markdown format based on an existing Product Requirements Document (PRD). The task list should be suitable for a developer to follow for implementation.
## Output
- **Format:** Markdown (`.md`)
- **Location:** `/tasks/`
- **Filename:** `TASKS-[PRD-FILE-NAME].md` (e.g., `TASKS-PRD-USER-PROFILE-EDITING.md`)
## Process
1. **Receive PRD Reference:** The user points the AI to a specific PRD file
2. **Analyze PRD:** The AI reads and analyzes the functional requirements, user stories, and other sections of the specified PRD.
3. **Phase 1: Generate Parent Tasks:** Based on the PRD analysis, create the file and generate the main, high-level tasks required to implement the feature. Use your judgement on how many high-level tasks to use. It's likely to be 3-5. Present these tasks to the user in the specified format (without sub-tasks yet). Inform the user: "I have generated the high-level tasks based on the PRD. Ready to generate the sub-tasks? Respond with 'Go' to proceed."
4. **Wait for Confirmation:** Pause and wait for the user to respond with "Go".
5. **Phase 2: Generate Sub-Tasks:** Once the user confirms, break down each parent task into smaller, actionable sub-tasks. Ensure sub-tasks logically follow from the parent task and cover the implementation details implied by the PRD.
6. **Identify Relevant Files:** Based on the tasks and PRD, identify potential files that will need to be created or modified. List these under the `Relevant Files` section with a brief description of their purpose in relation to the tasks.
7. **Generate Final Output:** Combine the parent tasks, sub-tasks, and relevant files into the final Markdown structure.
8. **Save Task List:** Save the generated document in the `/tasks/` directory with the filename `TASKS-[PRD-FILE-NAME].md`, where `[PRD-FILE-NAME]` matches the base name of the input PRD file (e.g., if the input was `PRD-USER-PROFILE-EDITING.md`, the output is `TASKS-PRD-USER-PROFILE-EDITING.md`).
## Output Format
The generated task list _must_ follow this structure:
```markdown
## Tasks
- [ ] 1.0 Parent Task Title
- [ ] 1.1 Sub-task description
- [ ] 1.2 Sub-task description
- [ ] 2.0 Parent Task Title
- [ ] 2.1 Sub-task description
- [ ] 2.2 Sub-task description
- [ ] 2.3 Sub-task description
- [ ] 3.0 Parent Task Title (may not have sub-tasks if simple enough)
### Relevant Files
- `path/to/potential/file1.ts` - Brief description of why this file is relevant (e.g., Contains the main component for this feature).
- `path/to/another/file.tsx` - Brief description (e.g., API route handler for data submission).
- `lib/utils/helpers.ts` - Brief description (e.g., Utility functions needed for calculations).
```
## Interaction Model
The process explicitly requires a pause after generating parent tasks to get user confirmation ("Go") before proceeding to generate sub-tasks. This ensures the high-level plan aligns with user expectations before diving into details.
## Target Audience
Assume the primary reader of the task list is a **developer** who will implement the feature.