问题
Plan Mode 输出 <proposed_plan> 后,当前只有 3 个选项:implement this plan / stay in Plan mode / switch to Default mode。
选择 “implement this plan” 时,会在同一会话中继续:规划阶段的大量探索记录(文件读取、工具输出、来回问答、被否定的思路)仍全部留在上下文里。而执行阶段真正需要的是最终方案本身,不是这些过程信息。
期望
新增第 4 个选项:clear context and implement this plan(清除上下文并实施计划):
- 新建干净会话,只携带已批准的计划文本开始实施
- 磁盘产物保持不变:已创建/修改的文件、AGENTS.md、配置等一律不动
- 原规划会话保留在历史中,可随时
/resume 回看
这样既“清洗上下文”,又“保留产物”,能显著降低执行阶段的 token 消耗和无关信息干扰。
详细说明与建议设计(点击展开)
现状
- 当前版本中,
PlanImplementationPrompt 只有 3 个选项;implement 的处理是在同一会话内发送实现指令,上下文不重置。
- 目前没有手动
/clear 或 /compact 命令,只有达到 autoCompactWindow(默认 50% 上下文窗口)后的自动压缩。
- 基础设施已具备:
SessionManager.forkSession()、compactSession()、/fork、/undo,本功能可低成本复用。
对标
- Codex CLI(约 2026-04 起)在计划弹窗提供 “Yes, clear context and implement”:清空会话、新建线程,仅以已批准的计划 markdown 作为首个输入。
- Claude Code 提供
/clear(清历史、保留文件与 CLAUDE.md)与 /compact(摘要压缩),但计划批准本身不会自动清空上下文。
- Copilot CLI 提供
/clear 与 /compact,但同样缺少计划交接的“清空上下文并实施”选项。
价值
- 工程:执行阶段输入 token 大幅下降;规划期试错路径、无关文件内容等噪声不再进入执行上下文;更利于命中 DeepSeek 上下文缓存。
- 研究:长上下文存在 lost-in-the-middle 与指令跟随退化,上下文相关性比体积更重要。执行任务的相关上下文是“决策完备的计划 + 代码现状”,而非规划过程转录——等价于把 spec 交给一位新工程师。
- 成本:仓库内 Plan Mode 对比研究显示规划带来约 +26% 成本,交接模式可在执行阶段回收部分输入成本。
建议交互与实现
- 在
PlanImplementationPrompt 增加第 4 项 clear context and implement this plan;默认光标仍停在第 1 项;数字键改为 1-4。
- 选择后:以当前会话为源派生新会话,仅保留系统提示 +
<proposed_plan> 全文 + 实现指令(沿用 getImplementationPrompt 的中英文判定);AGENTS.md、settings、MCP、skills 等运行上下文照常注入;file-history 分支随 fork 复制,保证 /undo 可追溯。
- 原会话保留在
sessions-index.json,标题可加后缀(如“(规划)”)以避免与新会话混淆。
边界与回退
- 该选项为 opt-in,不改变现有 “implement this plan” 行为。
- 若计划不够决策完备,新会话执行中可
/resume 回到原规划会话继续完善。
- 不删除、不回滚任何磁盘文件;只重置模型上下文。
实现提示
- 复用
SessionManager.forkSession() + 消息过滤,或新增 startPlanImplementationSession(planText)。
- 同步更新
docs/plan-mode.md 与 docs/plan-mode_en.md;README 斜杠命令表目前还漏了 /plan 和 /fork,可顺带补上。
问题
Plan Mode 输出
<proposed_plan>后,当前只有 3 个选项:implement this plan / stay in Plan mode / switch to Default mode。选择 “implement this plan” 时,会在同一会话中继续:规划阶段的大量探索记录(文件读取、工具输出、来回问答、被否定的思路)仍全部留在上下文里。而执行阶段真正需要的是最终方案本身,不是这些过程信息。
期望
新增第 4 个选项:clear context and implement this plan(清除上下文并实施计划):
/resume回看这样既“清洗上下文”,又“保留产物”,能显著降低执行阶段的 token 消耗和无关信息干扰。
详细说明与建议设计(点击展开)
现状
PlanImplementationPrompt只有 3 个选项;implement的处理是在同一会话内发送实现指令,上下文不重置。/clear或/compact命令,只有达到autoCompactWindow(默认 50% 上下文窗口)后的自动压缩。SessionManager.forkSession()、compactSession()、/fork、/undo,本功能可低成本复用。对标
/clear(清历史、保留文件与 CLAUDE.md)与/compact(摘要压缩),但计划批准本身不会自动清空上下文。/clear与/compact,但同样缺少计划交接的“清空上下文并实施”选项。价值
建议交互与实现
PlanImplementationPrompt增加第 4 项clear context and implement this plan;默认光标仍停在第 1 项;数字键改为 1-4。<proposed_plan>全文 + 实现指令(沿用getImplementationPrompt的中英文判定);AGENTS.md、settings、MCP、skills 等运行上下文照常注入;file-history分支随 fork 复制,保证/undo可追溯。sessions-index.json,标题可加后缀(如“(规划)”)以避免与新会话混淆。边界与回退
/resume回到原规划会话继续完善。实现提示
SessionManager.forkSession()+ 消息过滤,或新增startPlanImplementationSession(planText)。docs/plan-mode.md与docs/plan-mode_en.md;README 斜杠命令表目前还漏了/plan和/fork,可顺带补上。