| title | Persistent Planning Workflow | |||||
|---|---|---|---|---|---|---|
| description | Guides Kiro to maintain planning files that survive context resets, preventing repeated mistakes and lost progress on multi-step tasks | |||||
| category | workflows | |||||
| tags |
|
|||||
| inclusion | manual | |||||
| contextKey | @persistent-planning | |||||
| applicableTo |
|
|||||
| version | 1.0.0 |
For exploratory, multi-step tasks where you're not in a formal Kiro IDE spec flow — debugging sessions, research spikes, open-ended investigations — Kiro creates and maintains three planning files before starting work. These files survive context resets, prevent repeated mistakes, and ensure you never rediscover a dead end you already explored.
You MUST follow these rules for any task with more than two steps:
- You MUST create
task_plan.md,findings.md, andprogress.mdbefore starting work - You MUST re-read
task_plan.mdbefore making any major implementation decision - You MUST log all errors and dead ends in
findings.mdso they are not repeated - You MUST update
progress.mdafter each significant step - You MUST NOT start implementation until
task_plan.mdexists and is complete
The authoritative source of what needs to be done and in what order.
# Task Plan: {Feature or Task Name}
## Goal
One sentence describing what done looks like.
## Approach
Brief description of the chosen implementation strategy and why.
## Steps
- [ ] 1. First step
- [ ] 2. Second step
- [ ] 3. Third step
## Out of Scope
- Thing we are explicitly not doing
- Another thing to avoid scope creep
## Open Questions
- Question that needs answering before step XA running log of research, decisions, and dead ends. The most important file for preventing repeated mistakes.
# Findings: {Feature or Task Name}
## Key Decisions
- **Decision**: Why we chose approach X over Y
- **Decision**: Why library Z was ruled out
## Dead Ends (Do Not Retry)
- Tried approach A — failed because of reason B
- Tried library C — incompatible with D
## Research Notes
- Relevant API behavior discovered during investigation
- Edge case found that affects step 3Current status at a glance. Useful when resuming after a context reset.
# Progress: {Feature or Task Name}
## Status
In progress / Blocked / Complete
## Last Completed Step
Step 2 — description of what was done
## Next Action
Step 3 — description of what to do next
## Blockers
- Waiting on X before Y can proceedBefore writing any code, Kiro will:
- Create all three files with the task name filled in
- Populate
task_plan.mdwith goal, approach, steps, and out-of-scope items - Note any open questions that need answering first
- Only then begin implementation
As work progresses, Kiro will:
- Check off completed steps in
task_plan.md - Log any dead ends or surprising findings in
findings.mdimmediately - Update
progress.mdafter each meaningful step - Re-read
task_plan.mdbefore any decision that affects scope or approach
When resuming work, Kiro will:
- Read
progress.mdfirst to orient to current state - Read
findings.mdto avoid repeating mistakes - Read
task_plan.mdto confirm the next step - Continue from where progress left off
- Repeated mistakes from not logging dead ends and failed approaches
- Context loss when long sessions reset or switch focus
- Scope creep from not defining out-of-scope items upfront
- Disorientation when resuming work after a break
- Rework from forgetting decisions that were already made
Session 1: Tried approach A, failed, switched to B, made progress
Session 2: Context reset. Tried approach A again. Failed again.
Wasted an hour rediscovering what session 1 already knew.
Session 1: Created task_plan.md, findings.md, progress.md.
Tried approach A, logged failure in findings.md.
Switched to B, updated progress.md.
Session 2: Read progress.md — immediately oriented.
Read findings.md — approach A ruled out, skip it.
Continued from step 3 without any repeated work.
These files can live anywhere that makes sense for your project — project root, a planning/ directory, or alongside the feature being built. The names can be adjusted to fit team conventions. What matters is that all three exist and are kept current.
- Development Guidelines - Gap analysis and debugging protocols
- Tasks.md Structure - Structured implementation task lists