Use this by default for non-trivial multi-step work that needs persistent planning, progress tracking, or durable notes on disk. Trigger when a task will likely span multiple tool calls, research steps, verification loops, or enough context that the plan should not live only in transient chat memory.
64
77%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./skills/planning-with-files/SKILL.mdWork like Manus: use persistent markdown files as your working memory on disk.
This is not just an optional planning style. It should be the default persistence layer for complex Codex work.
Use it proactively when:
Before ANY complex task:
task_plan.md in the working directoryFor every non-trivial task, create THREE files:
| File | Purpose | When to Update |
|---|---|---|
task_plan.md | Track phases and progress | After each phase |
notes.md | Store findings and research | During research |
[deliverable].md | Final output | At completion |
Loop 1: Create task_plan.md with goal and phases
Loop 2: Research → save to notes.md → update task_plan.md
Loop 3: Read notes.md → create deliverable → update task_plan.md
Loop 4: Deliver final outputBefore each major action:
Read task_plan.md # Refresh goals in attention windowAfter each phase:
Edit task_plan.md # Mark [x], update statusWhen storing information:
Write notes.md # Don't stuff context, store in fileCreate this file FIRST for any complex task:
# Task Plan: [Brief Description]
## Goal
[One sentence describing the end state]
## Phases
- [ ] Phase 1: Plan and setup
- [ ] Phase 2: Research/gather information
- [ ] Phase 3: Execute/build
- [ ] Phase 4: Review and deliver
## Key Questions
1. [Question to answer]
2. [Question to answer]
## Decisions Made
- [Decision]: [Rationale]
## Errors Encountered
- [Error]: [Resolution]
## Status
**Currently in Phase X** - [What I'm doing now]For research and findings:
# Notes: [Topic]
## Sources
### Source 1: [Name]
- URL: [link]
- Key points:
- [Finding]
- [Finding]
## Synthesized Findings
### [Category]
- [Finding]
- [Finding]Never start a complex task without task_plan.md. This is non-negotiable.
Before any major decision, read the plan file. This keeps goals in your attention window.
After completing any phase, immediately update the plan file:
Large outputs go to files, not context. Keep only paths in working memory.
Every error goes in the "Errors Encountered" section. This builds knowledge for future tasks.
Use 3-file pattern for:
Skip for:
| Don't | Do Instead |
|---|---|
| Use TodoWrite for persistence | Create task_plan.md file |
| State goals once and forget | Re-read plan before each decision |
| Hide errors and retry | Log errors to plan file |
| Stuff everything in context | Store large content in files |
| Start executing immediately | Create plan file FIRST |
See reference.md for:
See examples.md for:
2f7766f
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.