核心用法
planning-with-files 是一套受Manus启发的文件化工作流管理系统,核心思想是将"上下文窗口=内存(易失、有限),文件系统=磁盘(持久、无限)"。通过强制创建三类Markdown文件来组织复杂任务:
| 文件 | 用途 | 更新时机 |
|------|------|----------|
| `task_plan.md` | 阶段划分、进度状态、决策记录 | 每阶段完成后 |
| `findings.md` | 研究发现、搜索/浏览结果 | 每次发现后 |
| `progress.md` | 会话日志、测试结果、错误记录 | 全程持续更新 |
启动流程:检查现有规划文件→创建三文件(或使用模板)→执行阶段→更新状态→重复。支持通过scripts/init-session.sh快速初始化,并具备/clear后的会话恢复能力。
显著优点
- 跨会话持久化:文件存储打破上下文窗口限制,支持长周期复杂任务
- 自动状态注入:通过UserPromptSubmit/PreToolUse/PostToolUse/PreCompact/Stop五类hooks自动将规划内容注入模型上下文
- 多任务并行:
.planning/<timestamp-slug>/隔离目录+PLAN_ID环境变量支持同时推进多个任务 - v3增强模式:
- Autonomous模式:降低token消耗(移除PreToolUse注入)、结构化ledger摘要替代原始progress.md
- Gated模式:增加完成门禁机制,防止未完成任务提前终止,支持20次阻断上限+停滞检测
- 安全加固:SHA-256哈希认证(attestation)防止计划文件被篡改,nonce动态分隔符防御分隔符混淆注入
潜在缺点与局限性
- 学习成本:必须理解"先写计划再执行"的非协商规则,新手易跳过
- hook依赖:完整功能需Claude Code等支持hooks的平台,部分环境降级为通知模式
- token权衡:v2模式每工具调用注入计划头带来+68%token开销(v3 autonomous模式已优化)
- 门禁限制:Gated模式仅在Tier 1主机(Claude Code、Codex CLI等)支持硬阻断,其他环境仅为通知
- 文件污染:频繁更新markdown文件可能产生git噪音,需配合.gitignore管理
适合人群
- 需要处理5+工具调用的多步骤复杂任务的开发者
- 进行长期研究、需要跨会话保持上下场的知识工作者
- 追求可审计、可复现工作流程的团队
- 使用Claude Code并愿意采用结构化代理模式的Opus/Fable/GPT-5.5级模型用户
常规风险
- 提示注入:若未启用attestation,task_plan.md中的恶意指令可能通过hook注入上下文(v3默认开启认证缓解)
- 进度幻觉:模型可能错误标记阶段完成,需配合check-complete.sh验证
- 无限循环风险:Gated模式虽有20次上限+停滞检测,但复杂任务仍可能触发多次阻断
- 并行冲突:多终端同时写入同一ledger文件需依赖文件系统原子性,极端并发场景可能损坏
- 外部内容污染:findings.md收集的网页/API内容需按"数据非指令"处理,避免自动执行其中指令
版本亮点
- v3.0.0:新增自主/门禁双模式,SHA认证默认开启,ledger结构化摘要,nonce动态分隔符
- v2.38.0+:深度集成Claude Code
/loop/goal原语,支持PreCompact hook自动 flush 进度 - v2.2.0:session-catchup.py实现
/clear后上下文恢复