| name | code-reviewer |
| description | 审查当前 git 变更、PR、提交范围、技能定义文件、架构调整或安全敏感代码时使用。输出结构化 Review Gate 结论(Pass/Reject)、问题分级(blocker/warning/suggest)、最低验证矩阵、证据链与复查基线。覆盖正确性、安全、架构、SOLID、可删除代码、性能、异常处理与测试风险;默认只输出 review,不直接修改代码。用户提到 review、code review、PR 审查、deep review、review gate、merge ready、blocker、evidence、pass、reject、SOLID、架构审查时都应触发。 |
| metadata | {"internal":true} |
Code Reviewer
铁律:先给 Review Gate 结论、阻塞原因和复查基线,再给摘要。不要因为测试通过、代码能跑或改动量小,就跳过正确性、安全和架构审查。没有最低验证证据,不得给 Pass。
核心概念
Pass / Reject 是 Gate 结论;blocker / warning / suggest 是问题分级,二者不能混用。
- 文档、规划、配置、脚本与测试代码同样属于正式审查对象,不能因为"不是业务代码"而跳过。
工作流
最低验证矩阵
任何变更都必须按"验证层级 + Review Gate"判断是否可以放行:
| 改动类型 | 最低验证 |
|---|
| 文档 / 规划 | lint:md(或链接路径检查)+ RG |
| 纯逻辑 / 工具函数 / 服务层 | lint + typecheck + 定向测试 + RG |
| API / 鉴权 / 数据模型 | lint + typecheck + 定向测试 + RG(关键写路径升级到流程验证) |
| UI 组件 / 页面交互 | lint + typecheck + 测试 + 浏览器验证 + RG |
| 修复型 Hotfix | lint + typecheck + 复现与修复后结果 + RG |
| 配置 / 依赖 / CI / 技能与 agent 定义 | lint + typecheck + 定向验证 + RG |
本矩阵为通用默认值,项目可在 AGENTS.md 中按自身需要调整。没有 RG 结论的变更只能视为"进行中",不能视为已完成。
分级审计协议(audit-depth)
审查投入与改动风险匹配,不应对所有改动一视同仁长时间分析:
| audit-depth | 适用改动 | 审查范围 | 时间盒 |
|---|
quick | 文档措辞、简单配置、重命名、测试补强 | 只核验证声明(lint/typecheck/定向测试结果)+ diff 概要一致性 + 明显错误;禁止跑实验、定向测试或翻全量源码 | ≤ 5 分钟 |
standard | 常规业务逻辑、模块内改动 | 正确性 + 边界 + 测试覆盖;定向抽查 ≤ 3 个关键文件 | ≤ 10 分钟 |
deep | 发布流程、安全/鉴权、外部调用、数据写入、配置与依赖变更、agent/skill 定义 | 全量 checklist + 针对性实证(临时仓库/本地实验/验证命令按需执行) | ≤ 20 分钟 |
- 时间盒由调用方用宿主系统时钟事后实测回填,审计方不自报时长、不检查时间;实测超时仅作分级校准信号,不回溯要求补动作。
- 调用方发起审计时必须显式声明
audit-depth(quick / standard / deep + 理由)、变更文件清单、已验证证据摘要与复审问题编号;未声明按 deep 防御执行。
输出格式
## Review Gate
- 结论: Pass | Reject
- 改动类型:
- 最低验证要求:
- 审查轮次:
- audit-depth:(调用方声明 + 本轮实际执行档位)
- 失败原因或通过条件:
- 复查基线:
## Findings
### blocker
1. [path/to/file.ext] 标题
- 风险
- 修复方向
### warning
### suggest
## 验证证据
- 已执行验证:
- 结果摘要:
- 未覆盖边界:
- 后续补跑计划:
技能文件专项审查
当改动涉及技能体系时,额外检查:
- description 是否真的能触发技能,而不是抽象介绍。
- 正文是否具备铁律、工作流、确认门、反模式和交付前检查。
- references/、scripts/、assets/ 是否职责清晰,是否存在跨目录重复定义。
- 是否保留了兼容别名,以及 canonical skill 是否唯一明确。
- 如果技能刚经历模板化重构,是否通过 git diff 或提交历史保留了旧版中的项目特化规则。
- skill / agent 改动是否保持唯一事实源,无重复抄写权威文档完整条款。
深度审查模式
当用户要求 deep review、code review expert 或 senior review 时:
- 使用 references/solid-checklist.md 审查职责边界、扩展性与耦合。
- 使用 references/security-checklist.md 审查鉴权、注入、密钥、SSRF、路径问题和竞态。
- 使用 references/code-quality-checklist.md 审查 swallowed exceptions、async error、N+1、缓存和边界条件。
- 使用 references/removal-plan.md 判断死代码是立即可删还是需要迁移计划。
- 解释为什么这是结构性风险,而不是只给表面建议。
确认门
- 没有用户确认时,不直接实现审查意见。
- 审查范围过大时,先和用户确认是全量 review 还是重点 review。
反模式
- 只给笼统评价,如"看起来不错""代码质量还行"。
- 按文件顺序复述 diff,而不是提炼真正的问题。
- 用"可能"掩盖已经足够明确的风险。
- 审查技能文件时,继续沿用旧模板标准而忽略 skill-creator。
- 只写"已审查通过"而不说明依据。
- 只跑 lint / typecheck 就给所有改动
Pass。
- 把问题分级当成最终 Gate 结论,或把 warning 写成"已通过"。
- 审查文档、脚本、配置、技能文件时不补充对应的最小验证。
- 没有复查基线,导致多轮 review 无法对账。
- 超限 diff 未核对拆分依据就放行。
交付前检查