名称: planning-with-files 版本: “2.1.2” 描述: 实现Manus风格的文件基础规划,用于复杂任务。创建task_plan.md、findings.md和progress.md。适用于开始复杂多步骤任务、研究项目或任何需要超过5个工具调用的任务。 用户可调用: true 允许工具:
- 读取
- 写入
- 编辑
- Bash
- Glob
- Grep
- WebFetch
- WebSearch
钩子:
SessionStart:
- 钩子:
- 类型: 命令 命令: “echo ‘[planning-with-files] 准备就绪。自动激活复杂任务,或手动用/planning-with-files调用’” PreToolUse:
- 匹配器: “Write|Edit|Bash”
钩子:
- 类型: 命令 命令: “cat task_plan.md 2>/dev/null | head -30 || true” PostToolUse:
- 匹配器: “Write|Edit”
钩子:
- 类型: 命令 命令: “echo ‘[planning-with-files] 文件已更新。如果这完成了一个阶段,更新task_plan.md状态。’” Stop:
- 钩子:
- 类型: 命令 命令: “${CLAUDE_PLUGIN_ROOT}/scripts/check-complete.sh”
- 钩子:
基于文件的规划
像Manus一样工作:使用持久的Markdown文件作为“磁盘上的工作记忆”。
重要:文件存放位置
使用此技能时:
- 模板存储在技能目录的
${CLAUDE_PLUGIN_ROOT}/templates/ - 您的规划文件 (
task_plan.md,findings.md,progress.md) 应创建在 您的项目目录 — 您正在工作的文件夹
| 位置 | 存放内容 |
|---|---|
技能目录 (${CLAUDE_PLUGIN_ROOT}/) |
模板、脚本、参考文档 |
| 您的项目目录 | task_plan.md, findings.md, progress.md |
这确保您的规划文件与您的代码并存,而不是埋在技能安装文件夹中。
快速开始
在任何复杂任务之前:
- 创建
task_plan.md在您的项目中 — 使用 templates/task_plan.md 作为参考 - 创建
findings.md在您的项目中 — 使用 templates/findings.md 作为参考 - 创建
progress.md在您的项目中 — 使用 templates/progress.md 作为参考 - 在决策前重读计划 — 刷新目标在注意力窗口中
- 在每个阶段后更新 — 标记完成,记录错误
注意: 所有三个规划文件应创建在您当前的工作目录(您的项目根目录),而不是技能的安装文件夹中。
核心模式
上下文窗口 = 内存(易失、有限)
文件系统 = 磁盘(持久、无限)
→ 任何重要内容都写入磁盘。
文件用途
| 文件 | 目的 | 何时更新 |
|---|---|---|
task_plan.md |
阶段、进度、决策 | 每个阶段后 |
findings.md |
研究、发现 | 任何发现后 |
progress.md |
会话日志、测试结果 | 整个会话中 |
关键规则
1. 先创建计划
永远不要在复杂任务没有 task_plan.md 的情况下开始。不可协商。
2. 两行动规则
“每2次查看/浏览/搜索操作后,立即将关键发现保存到文本文件。”
这防止视觉/多模态信息丢失。
3. 决策前阅读
在重大决策前,阅读计划文件。这使目标保持在您的注意力窗口中。
4. 行动后更新
完成任何阶段后:
- 标记阶段状态:
in_progress→complete - 记录遇到的任何错误
- 注意创建/修改的文件
5. 记录所有错误
每个错误都进入计划文件。这积累知识并防止重复。
## 遇到的错误
| 错误 | 尝试 | 解决方案 |
|-------|---------|------------|
| FileNotFoundError | 1 | 创建了默认配置 |
| API 超时 | 2 | 添加了重试逻辑 |
6. 永不重复失败
if action_failed:
next_action != same_action
跟踪您尝试了什么。改变方法。
三击错误协议
尝试 1: 诊断与修复
→ 仔细阅读错误
→ 识别根本原因
→ 应用针对性修复
尝试 2: 替代方法
→ 相同错误?尝试不同方法
→ 不同工具?不同库?
→ 永不重复完全相同的失败行动
尝试 3: 更广泛反思
→ 质疑假设
→ 搜索解决方案
→ 考虑更新计划
3次失败后: 向用户升级
→ 解释您尝试了什么
→ 分享具体错误
→ 请求指导
读与写决策矩阵
| 情况 | 行动 | 原因 |
|---|---|---|
| 刚写了一个文件 | 不要读 | 内容仍在上下文中 |
| 查看了图像/PDF | 立即写发现 | 多模态 → 文本在丢失前 |
| 浏览器返回数据 | 写入文件 | 截图不持久 |
| 开始新阶段 | 阅读计划/发现 | 如果上下文陈旧,重新定向 |
| 发生错误 | 阅读相关文件 | 需要当前状态修复 |
| 中断后恢复 | 阅读所有规划文件 | 恢复状态 |
五问题重启测试
如果您能回答这些,您的上下文管理是扎实的:
| 问题 | 答案来源 |
|---|---|
| 我在哪里? | task_plan.md 中的当前阶段 |
| 我要去哪里? | 剩余阶段 |
| 目标是什么? | 计划中的目标声明 |
| 我学到了什么? | findings.md |
| 我做了什么? | progress.md |
何时使用此模式
用于:
- 多步骤任务(3+步)
- 研究任务
- 构建/创建项目
- 跨越多个工具调用的任务
- 需要组织的任何事情
跳过:
- 简单问题
- 单文件编辑
- 快速查找
模板
复制这些模板开始:
- templates/task_plan.md — 阶段跟踪
- templates/findings.md — 研究存储
- templates/progress.md — 会话日志
脚本
自动化辅助脚本:
scripts/init-session.sh— 初始化所有规划文件scripts/check-complete.sh— 验证所有阶段完成
高级主题
- Manus 原则: 参见 reference.md
- 真实示例: 参见 examples.md
反模式
| 不要 | 改为 |
|---|---|
| 使用TodoWrite进行持久化 | 创建task_plan.md文件 |
| 陈述目标一次并忘记 | 决策前重读计划 |
| 隐藏错误并默默重试 | 记录错误到计划文件 |
| 将所有内容塞入上下文 | 存储大内容到文件 |
| 立即开始执行 | 先创建计划文件 |
| 重复失败行动 | 跟踪尝试,改变方法 |
| 在技能目录创建文件 | 在您的项目中创建文件 |