Skip to content

Commit 26326ec

Browse files
committed
feat: add todo management rule requiring todos before any tool use
CRITICAL rule: Todos must be updated BEFORE using any tool, not after. Only exception is simple conversational responses. This prevents: - Working on tasks not tracked in todos - Stale todos that don't match current work - Drift from requested tasks without visibility
1 parent cc89457 commit 26326ec

1 file changed

Lines changed: 51 additions & 0 deletions

File tree

.ai/rules/todo-management.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# Todo Management Rules
2+
3+
**CRITICAL:** Todos are MANDATORY, not optional.
4+
5+
## Rule: Update Todos BEFORE Any Tool Use
6+
7+
Before using ANY tool (except for simple conversational responses), you MUST first update your todos to reflect what you're about to do.
8+
9+
### The Only Exception
10+
11+
Simple conversational responses that don't use tools are exempt. Everything else requires todo tracking.
12+
13+
### What This Means
14+
15+
1. **Before** using Read, Edit, Write, Bash, Grep, Glob, or ANY other tool, check your todos
16+
2. If your todos don't reflect what you're about to do, update them FIRST
17+
3. Never have stale todos that don't match your current work
18+
4. Even "small" tasks like checking git status or reading a file should be tracked if they're part of a larger workflow
19+
20+
### Why This Matters
21+
22+
- Todos give the user visibility into what you're doing
23+
- They prevent drift from the actual task
24+
- They create accountability for staying on track
25+
- They help catch when you're doing work that wasn't requested
26+
27+
### Common Violations to Avoid
28+
29+
- Starting to fix something without adding it to todos first
30+
- Doing "quick" side tasks without tracking them
31+
- Having todos for Phase 2 while actually working on Phase 1
32+
- Reverting commits or making corrections without updating todos to reflect the correction work
33+
34+
### Correct Pattern
35+
36+
```
37+
1. User requests work
38+
2. Update TodoWrite with planned tasks
39+
3. Mark first task in_progress
40+
4. Do the work (using tools)
41+
5. Mark task completed
42+
6. Repeat for next task
43+
```
44+
45+
### Incorrect Pattern
46+
47+
```
48+
1. User requests work
49+
2. Start using tools immediately
50+
3. Maybe update todos later (or forget)
51+
```

0 commit comments

Comments
 (0)