AI Skill MartBrowse skillsPromptsProgramsLearnWhat is a Skill?
← Back to list

Planning with Files

Keeps task_plan.md, findings.md, and progress.md on disk as the agent's persistent working memory for multi-step work.

AutomationIntermediate★ 27,398⑂ 2,270AI score 10/10Last updated: Oct 10, 2026

What it does

  • Forces a task_plan.md before any complex task, stores research in findings.md, and logs session activity and test results in progress.md.
  • Restores state after disconnects or context compaction by re-reading the selected plan directory plus git diff --stat for unrecorded code changes.
  • Injects plan context automatically through UserPromptSubmit, PreToolUse, PostToolUse, Stop, and PreCompact hooks.
  • Ships helper scripts: init-session.sh, check-complete.sh, set-active-plan.sh --list, and session-catchup.py --metadata/--replay (same-project records only, no network upload path).
  • Encodes operating rules: the 2-action save rule, read-before-decide, log every error, a 3-strike error protocol, and a security boundary that keeps untrusted web content out of task_plan.md.

Who it's for

  • Anyone delegating long tasks that need 5+ tool calls: deep research, large refactors, greenfield builds.
  • Users whose agents drift off-goal or retry the same failing action in long sessions.
  • Teams running parallel tasks who need per-host PLAN_ID pinning or separate worktrees.

Examples

  1. Large refactor: run init-session.sh "Auth refactor", then flip each phase in task_plan.md from in_progress to complete as work lands.
  2. Technical research: after every two searches or page views, write key findings to findings.md so browser/multimodal output is never lost.
  3. Resuming tomorrow: list saved plans with set-active-plan.sh --list, read the three planning files, and continue exactly where the session stopped.

· · · Install guide · · ·

Try it now, no install

Paste this into Claude to use the skill without installing anything.

Read the instructions in this file and follow them to help me:
https://raw.githubusercontent.com/OthmanAdi/planning-with-files/HEAD/.factory/skills/planning-with-files/SKILL.md

What I want: (describe your task here)

If Claude can't open the link, open it yourself and paste the contents instead.

↓ If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
↓ Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on AI Skill Mart.
Copy the .factory/skills/planning-with-files folder from the GitHub repo OthmanAdi/planning-with-files into my ~/.claude/skills/othmanadi-planning-with-files-5/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

git clone https://github.com/OthmanAdi/planning-with-files.git /tmp/planning-with-files && mkdir -p ~/.claude/skills && cp -r /tmp/planning-with-files/.factory/skills/planning-with-files ~/.claude/skills/

⚠ This is a third-party skill. Check the source repository before installing.

  1. Open a terminal and clone the repo: git clone https://github.com/OthmanAdi/planning-with-files.git
  2. Copy the skill into your Claude skills directory: mkdir -p ~/.claude/skills && cp -r planning-with-files/.factory/skills/planning-with-files ~/.claude/skills/
  3. Make the helper scripts executable: chmod +x ~/.claude/skills/planning-with-files/scripts/*.sh
  4. Verify Python is available with python3 --version (needed for session-catchup.py).
  5. If you installed to a nonstandard path, export PWF_SCRIPT_DIR pointing at the skill's scripts directory.
  6. Restart Claude Code, then from your project root ask it to "plan this with planning-with-files" and confirm a .planning/ directory appears.
  7. Because the hooks run a shell script on every prompt and tool call, skim scripts/skill-hook.sh once before enabling it.