关于 code-review-expert
code-review-expert 是一项针对当前 Git 改动执行结构化审查的技能,面向需要检查架构、SOLID 原则、安全性和代码质量的开发者。它按 P0–P3 标注问题严重性,并默认只提交审查结果,不直接修改代码。
主要功能
- 01检查当前 Git 改动
- 02按 P0–P3 标注严重性
- 03审查 SOLID 与架构问题
- 04扫描安全性和可靠性风险
- 05识别可删除代码并规划后续步骤
- 06默认仅审查,不实施修改
适用场景
- 01合并前检查代码改动
- 02排查安全与可靠性隐患
- 03评估重构和代码删除候选
- 04整理分批审查大型差异的结果
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sanyuan0704/ sanyuan-skills --skill code-review-expert安装后在 Claude Code 中输入/code-review-expert确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdagents/agent.yamlreferences/code-quality-checklist.mdremoval-plan.mdsecurity-checklist.mdsolid-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.md | SOLID 代码异味提示和重构启发式 |
security-checklist.md | Web/应用安全和运行时风险检查清单 |
code-quality-checklist.md | 错误处理、性能和边界条件 |
removal-plan.md | 删除候选项和后续计划模板 |
评论
支持 Markdown