mcpField
C
code-review-expert

code-review-expert

github.com/sanyuan0704测试与质量4.0k13.6k 次安装24 周前更新
代码仓库

关于 code-review-expert

code-review-expert 是一项针对当前 Git 改动执行结构化审查的技能,面向需要检查架构、SOLID 原则、安全性和代码质量的开发者。它按 P0–P3 标注问题严重性,并默认只提交审查结果,不直接修改代码。

主要功能

  1. 01检查当前 Git 改动
  2. 02按 P0–P3 标注严重性
  3. 03审查 SOLID 与架构问题
  4. 04扫描安全性和可靠性风险
  5. 05识别可删除代码并规划后续步骤
  6. 06默认仅审查,不实施修改

适用场景

  1. 01合并前检查代码改动
  2. 02排查安全与可靠性隐患
  3. 03评估重构和代码删除候选
  4. 04整理分批审查大型差异的结果

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sanyuan0704/sanyuan-skills --skill code-review-expert

安装后在 Claude Code 中输入/code-review-expert确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
agents/
agent.yaml
references/
code-quality-checklist.md
removal-plan.md
security-checklist.md
solid-checklist.md

详细介绍

代码审查专家

概述

对当前 Git 变更进行结构化审查,重点关注 SOLID、架构、可删除项和安全风险。除非用户要求实现变更,否则默认仅输出审查结果。

严重级别

级别名称描述操作
P0严重安全漏洞、数据丢失风险、正确性错误必须阻止合并
P1高逻辑错误、严重违反 SOLID、性能退化应在合并前修复
P2中代码异味、可维护性问题、轻微违反 SOLID在此 PR 中修复或创建后续任务
P3低风格、命名、轻微建议可选改进

工作流

1) 前置上下文检查
  • 使用 git status -sb、git diff --stat 和 git diff 确定变更范围。
  • 如有需要,使用 rg 或 grep 查找相关模块、用法和契约。
  • 确定入口点、所有权边界和关键路径(身份验证、支付、数据写入、网络)。

边界情况:

  • 没有变更:如果 git diff 为空,告知用户并询问他们是否要审查暂存的变更或特定的提交范围。
  • 差异较大(>500 行):先按文件汇总,再按模块/功能领域分批审查。
  • 涉及多个关注点:按逻辑功能对审查结果分组,而非仅按文件顺序排列。
2) SOLID + 架构异味
  • 加载 references/solid-checklist.md,查看具体提示。
  • 检查以下方面:
    • SRP:职责无关的模块负担过重。
    • OCP:添加行为时频繁修改现有代码,而非使用扩展点。
    • LSP:子类破坏预期行为或需要进行类型检查。
    • ISP:宽泛的接口包含未使用的方法。
    • DIP:高层逻辑依赖于底层实现。
  • 提出重构方案时,说明其如何改善内聚性/耦合度,并概述最小且安全的拆分方案。
  • 如果重构并非易事,应提出渐进式计划,而非大规模重写。
3) 删除候选项 + 迭代计划
  • 加载 references/removal-plan.md,查看模板。
  • 找出未使用、冗余或已关闭功能标志控制的代码。
  • 区分可以立即安全删除与应暂缓并制定计划的内容。
  • 提供后续计划,列出具体步骤和检查点(测试/指标)。
4) 安全性和可靠性扫描
  • 加载 references/security-checklist.md,确保覆盖范围。
  • 检查以下方面:
    • XSS、注入(SQL/NoSQL/命令)、SSRF、路径遍历
    • AuthZ/AuthN 缺口、缺少租户检查
    • 秘密信息泄漏或在日志/环境变量/文件中暴露 API 密钥
    • 速率限制、无界循环、CPU/内存热点
    • 不安全的反序列化、弱加密、不安全的默认设置
    • 竞态条件:并发访问、先检查后操作、TOCTOU、缺少锁
  • 指出可利用性和影响。
5) 代码质量扫描
  • 加载 references/code-quality-checklist.md,确保覆盖范围。
  • 检查以下方面:
    • 错误处理:吞掉异常、过于宽泛的 catch、缺少错误处理、异步错误
    • 性能:N+1 查询、热点路径中的 CPU 密集型操作、缺少缓存、无界内存
    • 边界条件:null/undefined 处理、空集合、数值边界、差一错误
  • 标记可能导致静默失败或生产事故的问题。
6) 输出格式

按以下格式组织审查结果:

## Code Review Summary

**Files reviewed**: X files, Y lines changed
**Overall assessment**: [APPROVE / REQUEST_CHANGES / COMMENT]

---

## Findings

### P0 - Critical
(none or list)

### P1 - High
1. **[file:line]** Brief title
  - Description of issue
  - Suggested fix

### P2 - Medium
2. (continue numbering across sections)
  - ...

### P3 - Low
...

---

## Removal/Iteration Plan
(if applicable)

## Additional Suggestions
(optional improvements, not blocking)

内联评论:针对特定文件的问题使用以下格式:

::code-comment{file="path/to/file.ts" line="42" severity="P1"}
Description of the issue and suggested fix.
::

审查通过:如果没有发现问题,请明确说明:

  • 检查了哪些内容
  • 未覆盖的领域(例如,“未验证数据库迁移”)
  • 剩余风险或建议的后续测试
7) 确认后续步骤

呈现审查结果后,询问用户接下来如何处理:

---

## Next Steps

I found X issues (P0: _, P1: _, P2: _, P3: _).

**How would you like to proceed?**

1. **Fix all** - I'll implement all suggested fixes
2. **Fix P0/P1 only** - Address critical and high priority issues
3. **Fix specific items** - Tell me which issues to fix
4. **No changes** - Review complete, no implementation needed

Please choose an option or provide specific instructions.

重要:在用户明确确认之前,切勿实现任何变更。这是一个优先审查的工作流。

资源

references/
文件用途
solid-checklist.mdSOLID 代码异味提示和重构启发式
security-checklist.mdWeb/应用安全和运行时风险检查清单
code-quality-checklist.md错误处理、性能和边界条件
removal-plan.md删除候选项和后续计划模板

评论

支持 Markdown