|
| 1 | +--- |
| 2 | +name: make-plans |
| 3 | +description: Structures plan.md files for parallel, non-overlapping agent work. Use when creating or editing execution plans, task lists for multiple agents, or when the user asks how to structure plans or split work into tasks. |
| 4 | +--- |
| 5 | + |
| 6 | +# Making plan.md Files |
| 7 | + |
| 8 | +Plans enable **parallel, non-overlapping work**. Each task must be independent; agents work in a **dedicated git worktree** (see worktrees skill). |
| 9 | + |
| 10 | +## Required plan.md Structure |
| 11 | + |
| 12 | +1. **Worktree section** (top) β path, branch, base branch. See worktrees skill. |
| 13 | +2. **Task overview** β one line: tasks are self-contained; same-file tasks have dependencies. |
| 14 | +3. **Task sections** β each with the template below. |
| 15 | +4. **Execution order** β phases showing what can run in parallel. |
| 16 | +5. **File ownership summary** β table: Task | Creates/Modifies. |
| 17 | + |
| 18 | +## Task Template |
| 19 | + |
| 20 | +Every task must include: |
| 21 | + |
| 22 | +```md |
| 23 | +## Task N: <Descriptive Name> |
| 24 | + |
| 25 | +**File(s) to create/modify:** `path/to/file.tsx` |
| 26 | + |
| 27 | +**Dependencies:** Task X (or "None") |
| 28 | + |
| 29 | +**Status:** pending | in-progress | done | blocked |
| 30 | + |
| 31 | +**Owner:** <agent-name> | unassigned |
| 32 | + |
| 33 | +**Scope:** |
| 34 | + |
| 35 | +- Bullet points; include interfaces/snippets if helpful |
| 36 | + |
| 37 | +**Acceptance Criteria:** |
| 38 | + |
| 39 | +- [ ] Verifiable condition |
| 40 | +- [ ] e.g. TypeScript compiles, exports from module |
| 41 | +``` |
| 42 | + |
| 43 | +## Task Independence Rules |
| 44 | + |
| 45 | +- **Same file β cannot run in parallel.** Add explicit dependencies so only one agent touches a file at a time. |
| 46 | +- **Explicit dependencies:** If B needs A, write `**Dependencies:** Task 1`. |
| 47 | +- **Self-contained scope:** Task must be doable without other in-progress tasks (include types, imports, exports). |
| 48 | +- **Same-file options:** Either one integration task (e.g. "Update index.tsx for all components", deps: 1β4) or a chain (Task 7 adds A, Task 8 adds B with dep Task 7). |
| 49 | + |
| 50 | +## Task Granularity |
| 51 | + |
| 52 | +- **Too coarse:** "Implement entire Gallery" β not parallelizable. |
| 53 | +- **Too fine:** Separate tasks for "create file", "add imports", "add type" β overhead. |
| 54 | +- **Good:** One task = one logical unit (e.g. "GalleryContext: types + context + hook", "Gallery Provider: state + navigation", "GalleryUI: rendering + interactions"). |
| 55 | + |
| 56 | +## Cross-Cutting / Integration |
| 57 | + |
| 58 | +Use a final integration task, e.g.: |
| 59 | + |
| 60 | +- Update `index.tsx` exports for all new components. |
| 61 | +- Update main stylesheet to import component styles. |
| 62 | +- Dependencies: all preceding tasks. |
| 63 | + |
| 64 | +## Checklist Before Finalizing plan.md |
| 65 | + |
| 66 | +- [ ] Worktree section at top |
| 67 | +- [ ] Same-file tasks have dependencies |
| 68 | +- [ ] Dependencies explicit; execution order and file ownership table present |
| 69 | +- [ ] Tasks sized appropriately; each has Status, Owner, acceptance criteria |
| 70 | + |
| 71 | +For full examples and worktree setup, see [reference.md](reference.md) and the worktrees skill. |
0 commit comments