planning-with-files
Implements Manus-style file-based planning for complex tasks. Creates task_plan.md, findings.md, and progress.md. Use when starting complex multi-step tasks, research projects, or any task requiring >5 tool calls. Now with automatic session recovery after /clear.
- License 许可
- MIT
- 所属仓库
- xiaoyuge886/aigc
- 最近更新
- 2026-07-14
- Stars
- ★ 200
- Forks
- 20
01 前言 Front Matter
- name
- planning-with-files
- hooks
- { "Stop": [ { "hooks": [ { "type": "command", "command": "SCRIPT_DIR=\"${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/plugins/planning-with-files}/scripts\"\nif command -v pwsh &> /dev/null && [[ \"$OSTYPE\" == \"msys\" || \"$OSTYPE\" == \"win32\" || \"$OS\" == \"Windows_NT\" ]]; then\n pwsh -ExecutionPolicy Bypass -File \"$SCRIPT_DIR/check-complete.ps1\" 2>/dev/null || powershell -ExecutionPolicy Bypass -File \"$SCRIPT_DIR/check-complete.ps1\" 2>/dev/null || bash \"$SCRIPT_DIR/check-complete.sh\"\nelse\n bash \"$SCRIPT_DIR/check-complete.sh\"\nfi" } ] } ], "PreToolUse": [ { "hooks": [ { "type": "command", "command": "cat task_plan.md 2>/dev/null | head -30 || true" } ], "matcher": "Write|Edit|Bash|Read|Glob|Grep" } ], "PostToolUse": [ { "hooks": [ { "type": "command", "command": "echo '[planning-with-files] File updated. If this completes a phase, update task_plan.md status.'" } ], "matcher": "Write|Edit" } ] }
- version
- 2.4.1
- description
- Implements Manus-style file-based planning for complex tasks. Creates task_plan.md, findings.md, and progress.md. Use when starting complex multi-step tasks, research projects, or any task requiring >5 tool calls. Now with automatic session recovery after /clear.
- allowed-tools
- [ "Read", "Write", "Edit", "Bash", "Glob", "Grep", "WebFetch", "WebSearch" ]
- user-invocable
- true
02 资源文件 10
- 参考文档examples.md4.3 KB
- 参考文档reference.md7.9 KB
- 脚本scripts/check-complete.ps11.2 KB
- 脚本scripts/check-complete.sh1.1 KB
- 脚本scripts/init-session.ps12.4 KB
- 脚本scripts/init-session.sh2.2 KB
- 脚本scripts/session-catchup.py7.3 KB
- 参考文档templates/findings.md3.5 KB
- 参考文档templates/progress.md3.9 KB
- 参考文档templates/task_plan.md4.5 KB
03 SKILL.md 正文
Planning with Files
Work like Manus: Use persistent markdown files as your "working memory on disk."
FIRST: Check for Previous Session (v2.2.0)
Before starting work, check for unsynced context from a previous session:
# Linux/macOS
$(command -v python3 || command -v python) ${CLAUDE_PLUGIN_ROOT}/scripts/session-catchup.py "$(pwd)"
# Windows PowerShell
& (Get-Command python -ErrorAction SilentlyContinue).Source "$env:USERPROFILE\.claude\skills\planning-with-files\scripts\session-catchup.py" (Get-Location)
If catchup report shows unsynced context:
- Run
git diff --statto see actual code changes - Read current planning files
- Update planning files based on catchup + git diff
- Then proceed with task
Important: Where Files Go
- Templates are in
${CLAUDE_PLUGIN_ROOT}/templates/ - Your planning files go in your project directory
| Location | What Goes There |
|---|---|
Skill directory (${CLAUDE_PLUGIN_ROOT}/) |
Templates, scripts, reference docs |
| Your project directory | task_plan.md, findings.md, progress.md |
Quick Start
Before ANY complex task:
- Create
task_plan.md— Use templates/task_plan.md as reference - Create
findings.md— Use templates/findings.md as reference - Create
progress.md— Use templates/progress.md as reference - Re-read plan before decisions — Refreshes goals in attention window
- Update after each phase — Mark complete, log errors
Note: Planning files go in your project root, not the skill installation folder.
The Core Pattern
Context Window = RAM (volatile, limited)
Filesystem = Disk (persistent, unlimited)
→ Anything important gets written to disk.
File Purposes
| File | Purpose | When to Update |
|---|---|---|
task_plan.md |
Phases, progress, decisions | After each phase |
findings.md |
Research, discoveries | After ANY discovery |
progress.md |
Session log, test results | Throughout session |
Critical Rules
1. Create Plan First
Never start a complex task without task_plan.md. Non-negotiable.
2. The 2-Action Rule
"After every 2 view/browser/search operations, IMMEDIATELY save key findings to text files."
This prevents visual/multimodal information from being lost.
3. Read Before Decide
Before major decisions, read the plan file. This keeps goals in your attention window.
4. Update After Act
After completing any phase:
- Mark phase status:
in_progress→complete - Log any errors encountered
- Note files created/modified
5. Log ALL Errors
Every error goes in the plan file. This builds knowledge and prevents repetition.
## Errors Encountered
| Error | Attempt | Resolution |
|-------|---------|------------|
| FileNotFoundError | 1 | Created default config |
| API timeout | 2 | Added retry logic |
6. Never Repeat Failures
if action_failed:
next_action != same_action
Track what you tried. Mutate the approach.
The 3-Strike Error Protocol
ATTEMPT 1: Diagnose & Fix
→ Read error carefully
→ Identify root cause
→ Apply targeted fix
ATTEMPT 2: Alternative Approach
→ Same error? Try different method
→ Different tool? Different library?
→ NEVER repeat exact same failing action
ATTEMPT 3: Broader Rethink
→ Question assumptions
→ Search for solutions
→ Consider updating the plan
AFTER 3 FAILURES: Escalate to User
→ Explain what you tried
→ Share the specific error
→ Ask for guidance
Read vs Write Decision Matrix
| Situation | Action | Reason |
|---|---|---|
| Just wrote a file | DON'T read | Content still in context |
| Viewed image/PDF | Write findings NOW | Multimodal → text before lost |
| Browser returned data | Write to file | Screenshots don't persist |
| Starting new phase | Read plan/findings | Re-orient if context stale |
| Error occurred | Read relevant file | Need current state to fix |
| Resuming after gap | Read all planning files | Recover state |
The 5-Question Reboot Test
If you can answer these, your context management is solid:
| Question | Answer Source |
|---|---|
| Where am I? | Current phase in task_plan.md |
| Where am I going? | Remaining phases |
| What's the goal? | Goal statement in plan |
| What have I learned? | findings.md |
| What have I done? | progress.md |
When to Use This Pattern
Use for:
- Multi-step tasks (3+ steps)
- Research tasks
- Building/creating projects
- Tasks spanning many tool calls
- Anything requiring organization
Skip for:
- Simple questions
- Single-file edits
- Quick lookups
Templates
Copy these templates to start:
- templates/task_plan.md — Phase tracking
- templates/findings.md — Research storage
- templates/progress.md — Session logging
Scripts
Helper scripts for automation:
scripts/init-session.sh— Initialize all planning filesscripts/check-complete.sh— Verify all phases completescripts/session-catchup.py— Recover context from previous session (v2.2.0)
Advanced Topics
- Manus Principles: See reference.md
- Real Examples: See examples.md
Anti-Patterns
| Don't | Do Instead |
|---|---|
| Use TodoWrite for persistence | Create task_plan.md file |
| State goals once and forget | Re-read plan before decisions |
| Hide errors and retry silently | Log errors to plan file |
| Stuff everything in context | Store large content in files |
| Start executing immediately | Create plan file FIRST |
| Repeat failed actions | Track attempts, mutate approach |
| Create files in skill directory | Create files in your project |
04 同仓库更多 Skills
skill-creator
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, update or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
investment-due-diligence-report
投资尽调报告专业生成工具。当用户需要撰写投资尽调报告、尽职调查报告、投资分析报告时使用此skill。支持处理Excel财务数据、PDF文档等多种格式数据源,自动生成包含执行摘要、业务分析、财务分析、风险提示、投资建议等核心章节的专业报告。无论用户明确要求"写报告"还是提到"分析投资标的"、"评估项目"、"做DD"等相关需求时,都应使用此skill。
skill-development
This skill should be used when the user wants to "create a skill", "add a skill to plugin", "write a new skill", "improve skill description", "organize skill content", or needs guidance on skill structure, progressive disclosure, or skill development best practices for Claude Code plugins.
plugin-structure
This skill should be used when the user asks to "create a plugin", "scaffold a plugin", "understand plugin structure", "organize plugin components", "set up plugin.json", "use ${CLAUDE_PLUGIN_ROOT}", "add commands/agents/skills/hooks", "configure auto-discovery", or needs guidance on plugin directory layout, manifest configuration, component organization, file naming conventions, or Claude Code plugin architecture best practices.
plugin-settings
This skill should be used when the user asks about "plugin settings", "store plugin configuration", "user-configurable plugin", ".local.md files", "plugin state files", "read YAML frontmatter", "per-project plugin settings", or wants to make plugin behavior configurable. Documents the .claude/plugin-name.local.md pattern for storing plugin-specific configuration with YAML frontmatter and markdown content.
mcp-integration
This skill should be used when the user asks to "add MCP server", "integrate MCP", "configure MCP in plugin", "use .mcp.json", "set up Model Context Protocol", "connect external service", mentions "${CLAUDE_PLUGIN_ROOT} with MCP", or discusses MCP server types (SSE, stdio, HTTP, WebSocket). Provides comprehensive guidance for integrating Model Context Protocol servers into Claude Code plugins for external tool and service integration.