# 需求分析：Cursor 风格 Plan 模式

## 背景与问题

当前 EvoFlow 更偏“可执行编排”的智能体体系（任务/子任务、监控、工具调用），但缺少 Cursor 那种明确的 Plan 体验：

- 用户希望先看到一份靠谱计划（只读、不产生副作用）
- 用户确认后再执行（写文件/跑命令/并行子任务）
- 执行过程中既要“像 Cursor 一样丝滑”，也要保留 EvoFlow 的“监工可控”

## 目标（Goals）

- Plan 阶段对齐 Cursor：
  - 只读扫描（可选允许只读工具）
  - 最多 1–2 个阻塞澄清
  - 严格输出计划模板（与 `create-plan` 对齐）
  - **0 副作用（必须有硬门禁）**
- 完整周期：planning -> plan_ready -> awaiting_exec -> executing -> done/paused/回退
- 执行阶段支持“最强综合方案”：既可直跑收敛，也可里程碑监工/全程监工
- 主智能体=监工：协调/管控子任务，确保结果可验收、失败可恢复

## 非目标（Non-goals）

- 不追求复刻 Cursor 的 UI 细节（按钮样式、编辑器交互），“行为一致”优先
- 不在 Plan 阶段进行任何写入、命令执行或外部副作用

## 用户故事（User Stories）

- 作为用户，我想先看到一份计划再执行，避免智能体直接改代码导致不可控。
- 作为用户，我确认后希望智能体能快速推进执行，并在关键点给我反馈（不要刷屏）。
- 作为维护者，我希望 Plan 阶段永远不会有副作用，靠系统机制保证，而不是靠提示词“自觉”。

## 成功标准（Definition of Done, DoD）

- planning：输出必须符合计划模板，且不会触发写/执行/委派类工具调用（系统强制）
- executing：授权后允许执行，能产出交付物与验证结果
- 支持回退：executing/paused 可回到 planning，重新产出计划
- 有测试/回归：PlanGuard 的“0 副作用”能被单测覆盖

## 约束与风险

- 仅提示词无法保证 0 副作用，必须引入硬门禁（PlanGuard）
- Mermaid 渲染器兼容性差异：文档图需要 ASCII 化写法
- 流式 run context 固定：phase 推进可能需要落盘状态作为“实时来源”

