阶段 1: 需求理解
目标:全面理解用户需求
执行要点:
- 识别核心功能、业务实体、API 端点、业务规则
- 根据复杂度决定是否使用 ultrathink
- 记录需求理解摘要
任务管理:
```markdown
task = findTaskBySubject(tasks, "阶段 1: 需求理解")
TaskUpdate(task.id, status="in_progress", owner="requirement-analysis")
# 完成时
TaskUpdate(task.id, status="completed")
```
---
阶段 2: 代码库探索
目标:全面探索代码库,理解项目架构
首要任务:查找并阅读 CLAUDE.md 文件
探索模式:
基础模式(简单需求):
- 使用单个 Explore agent
- 快速定位相关代码
并行模式(复杂需求):
- 同时启动 2-5 个 Explore agent
- 按架构层次或功能模块分解
- ⚠️ 必须在单个消息中发起所有 Task 调用
- 每个任务设置
run_in_background: true - 使用 TaskOutput 收集结果
查找内容:
- CLAUDE.md 规范
- 相关实体和服务
- 现有模式和约定
并行模式示例:[并行模式指南](references/parallel-patterns.md)
---
阶段 3: 外部资源研究 (条件执行)
目标:研究外部资源,获取最新信息和最佳实践
执行条件(满足任一即执行):
- 涉及新的第三方库或框架
- 需要了解行业最新实践
- 内部代码库示例不充分
工具优先级:
- 网页搜索:exa MCP → WebSearch
- 库文档:context7 MCP → WebSearch + Grep + Read
跳过场景:
- 完全基于已有代码
- 团队对技术已经熟悉
- 时间紧急且需求简单
跳过处理:
```markdown
TaskUpdate(task.id, status="completed", metadata={note: "不满足执行条件,已跳过"})
```
---
阶段 4: 澄清问题
目标:解决所有不清楚、模糊或有歧义的需求点
重要:必须使用 AskUserQuestion 工具
澄清内容:
- 模糊或规格不足的需求
- 多个有效实施方法之间的选择
- 业务规则细节
- 技术选型或架构决策
最佳实践:
- 一次提问多个相关问题(使用 multiSelect)
- 提供具体选项和说明影响
- 推荐首选选项并说明理由
任务管理:
```markdown
task = findTaskBySubject(tasks, "阶段 4: 澄清问题")
TaskUpdate(task.id, status="in_progress", owner="requirement-analysis")
# 用户回应后
TaskUpdate(task.id, status="completed")
```
---
阶段 5: 深度分析
目标:使用 ultrathink 进行深度分析,设计完整的技术方案
必须使用 ultrathink:mcp__sequential-thinking__sequentialthinking
分析内容:
- 分析需求组件(回顾阶段1结果)
- 分解为可实施的功能模块
- 识别模块间的依赖关系
- 分析潜在的技术和业务风险
- 设计数据结构(符合 CLAUDE.md 规范)
- 实体/表结构定义
- 字段类型和约束
- 关联关系和索引
- 设计 API 端点(符合 CLAUDE.md 规范)
- HTTP 方法、路径设计
- 请求/响应结构
- 认证和权限要求
- 设计服务层(符合 CLAUDE.md 规范)
- 服务接口定义
- 依赖关系设计
- 业务逻辑流程
- 识别风险和边缘情况
- 考虑阶段4中用户澄清的特殊情况
- 分析潜在的错误场景
- 规划异常处理策略
- 规划详细实施步骤
- 整合所有上述分析
- 制定可执行的分步实施计划
注意事项:
虽然 ultrathink 能够访问完整对话历史,但建议明确引用和总结之前阶段的关键发现,确保分析的连贯性和准确性。
---
阶段 6: 展示实施计划
目标:向用户展示完整的实施计划,等待确认
展示内容:
- 需求总结 - 理解的核心要点
- 代码库发现 - 相关代码和模式
- 外部资源(如适用)- 搜索结果和库文档
- 技术设计 - 数据库、API、服务层
- 实施步骤 - 编号的详细步骤
- 风险和注意事项
重要:在用户确认前,不要标记任务为 completed
询问:"这个实施计划看起来如何?我可以开始实施了吗?"
用户确认后:
```markdown
TaskUpdate(task.id, status="completed")
# 阶段7自动解除阻塞,可以开始
```
输出格式:[输出模板](assets/output-template.md)
---
阶段 7: 实施开发
目标:基于阶段6的架构设计,实施功能代码
前提:必须获得用户明确确认(阶段6完成)
执行原则:
- 严格遵循 CLAUDE.md
- 按照架构设计实施功能
- 保持代码简洁,避免过度工程
- 及时验证和测试
- 遇到问题及时使用 AskUserQuestion
阶段职责:
- 编写功能代码
- 实现设计的 API、数据结构、服务层
- 编写单元测试(如需要)
- 不包含代码审查(审查在阶段8)
完成标志:
---
阶段 8: 代码审查
目标:独立的质量把关阶段,全面审查代码质量
阶段职责:
- 独立的质量把关阶段
- 检查代码质量、规范遵循
- 识别 bug 和潜在问题
- 提供改进建议
审查模式选择:
单一审查模式(简单需求):
- 使用 1 个 code-reviewer agent
- 全面审查所有维度
并行深度审查模式(复杂需求):
- 同时启动 3-5 个审查任务
- 每个聚焦于特定维度(功能正确性、代码风格、规范遵循)
- ⚠️ 必须在单个消息中发起所有 Task 调用
- 每个任务设置
run_in_background: true - 使用 TaskOutput 收集结果
执行步骤:
- 选择审查模式(基于需求复杂度)
- 启动审查 agents
- 收集审查结果(使用 TaskOutput)
- 整合问题列表
- 使用 AskUserQuestion 询问处理方式
审查后必须:
- 使用 AskUserQuestion 询问用户如何处理问题
- 不得自动修复,必须征求确认
产出:审查报告(问题列表、严重性标注)、改进建议
---
阶段 9: 总结
目标:总结整个需求分析流程,提供后续建议
总结内容:
- 需求总结
- 核心功能回顾
- 实现的关键特性
- 成果清单
- 完成的功能模块
- 创建的文件
- 编写的代码
- 质量指标
- 审查发现的问题数量
- 修复情况
- 代码质量评分
- 后续建议
- 进一步优化建议
- 潜在改进点
- 文档更新建议
- 经验教训
- 遇到的挑战
- 解决方案
- 最佳实践
最终进度显示:
```markdown
[完成] 所有阶段完成!
需求分析项目 - 100% 完成
📝 阶段完成情况:
[完成] 阶段 1: 需求理解
[完成] 阶段 2: 代码库探索
[跳过] 阶段 3: 外部资源研究 (跳过)
[完成] 阶段 4: 澄清问题
[完成] 阶段 5: 深度分析
[完成] 阶段 6: 展示实施计划
[完成] 阶段 7: 实施开发
[完成] 阶段 8: 代码审查
[完成] 阶段 9: 总结
项目成功完成!
```
---