name: 请求代码审查 description: 当需要为PR/MR请求代码审查,并希望在合并前获得一致的审查摘要(上下文、范围、风险领域、测试说明、验收标准)时使用。
请求代码审查
派遣代码审查员子代理,在问题级联之前发现问题。
核心原则: 尽早审查,频繁审查。
如何请求
1. 获取git SHA:
# 针对PR/分支审查(推荐):
BASE_SHA=$(git merge-base origin/main HEAD)
HEAD_SHA=$(git rev-parse HEAD)
# 仅针对单个提交:
# BASE_SHA=$(git rev-parse HEAD~1)
2. 派遣代码审查员子代理:
使用Task工具,模板位于 templates/code-reviewer.md
占位符:
{WHAT_WAS_IMPLEMENTED}- 你刚刚构建了什么{PLAN_OR_REQUIREMENTS}- 它应该做什么{BASE_SHA}- 起始提交{HEAD_SHA}- 结束提交{DESCRIPTION}- 简要摘要
3. 根据反馈采取行动:
- 立即修复关键问题
- 在继续之前修复重要问题
- 记录次要问题稍后处理
- 如果审查员有误,请提出反驳(附上理由)
示例
[刚刚完成任务 2:添加验证函数]
BASE_SHA=$(git log --oneline | grep "Task 1" | head -1 | awk '{print $1}')
HEAD_SHA=$(git rev-parse HEAD)
[派遣代码审查员子代理,使用 references/code-reviewer.md]
WHAT_WAS_IMPLEMENTED: 对话索引的验证和修复函数
PLAN_OR_REQUIREMENTS: 来自 docs/plans/deployment-plan.md 的任务 2
BASE_SHA: a7981ec
HEAD_SHA: 3df7661
DESCRIPTION: 添加了 verifyIndex() 和 repairIndex(),包含 4 种问题类型
[子代理返回]:
优点:架构清晰,有实际测试
问题:
重要:缺少进度指示器
次要:报告间隔使用了魔术数字 (100)
评估:可以继续推进
[修复进度指示器,继续任务 3]
与工作流的集成
子代理驱动开发:
- 每个任务后都进行审查
- 在问题叠加前发现问题
- 修复后再进入下一个任务
执行计划:
- 每批任务(3个)后审查一次
- 获取反馈,应用,继续
临时开发:
- 合并前审查
- 遇到困难时审查
危险信号
切勿:
- 因为“很简单”而跳过审查
- 忽略关键问题
- 带着未修复的重要问题继续
- 与有效的技术反馈争论
如果审查员有误:
- 用技术理由提出反驳
- 展示证明其有效的代码/测试
- 请求澄清