关于 code-review
code-review 是一项委派给 agents-plugin:review 的端到端代码审查技能,适用于需要综合检查代码质量、安全、性能和测试的开发者。它要求复核每项发现,并按严重度和置信度整理报告。
主要功能
- 01覆盖质量、安全、性能与架构
- 02检查测试覆盖缺口
- 03委派 agents-plugin:review 执行
- 04复核发现并确认触发条件
- 05按严重度和置信度排序报告
- 06可对大型代码库并行审查
适用场景
- 01审查目录或 Pull Request 差异
- 02查找安全与性能问题
- 03发现遗漏的测试场景
- 04汇总需修复事项与人工跟进
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill code-review安装后在 Claude Code 中输入/code-review确认已加载。
附带文件scripts/tests/test-code-review-rubric-depth.sh
详细介绍
何时使用此技能
| 在以下情况下使用此技能…… | 在以下情况下改用其他工具…… |
|---|---|
| 对质量、安全性、性能和测试进行端到端审查 | 按照手动安全性/正确性检查清单逐项检查 → code-review-checklist |
| 借助委派的 Agent 分析审查目录或 PR 差异 | 专门扫描代码异味 → code-antipatterns |
| 发现缺失的测试用例或薄弱的断言 | 单独审查测试代码质量 → code-test-quality |
| 生成整合后的审查报告 | 审查发现问题后进行重构 → code-refactor |
上下文
- 审查路径:
$1(未指定时默认为当前目录)
参数
$1:审查路径(未指定时默认为当前目录)
你的任务
将此任务委派给 agents-plugin:review Agent。
使用 Agent 工具,并设置 subagent_type: agents-plugin:review,执行全面的代码审查。
首先,使用 Glob 工具查找待审查的源文件:
- 源文件:
**/*.py、**/*.js、**/*.ts、**/*.go、**/*.rs - 测试文件:
**/*test*模式 然后将发现的文件交给该 Agent。
代码审查 Agent 应当:
-
分析代码质量:
- 命名规范和可读性
- 代码结构和可维护性
- 对 SOLID 原则的遵循情况
-
评估安全性:
- 输入验证漏洞
- 身份验证和授权问题
- 密钥和敏感数据泄露
-
评估性能:
- 瓶颈和低效之处
- 内存使用模式
- 优化机会
-
审查架构:
- 设计模式的使用情况
- 组件耦合度
- 依赖管理
-
发现测试覆盖率缺口:
- 缺失的测试用例
- 未覆盖的边界情况
- 集成测试需求
-
在适当且安全的情况下应用修复
-
重新验证每个候选发现(误报筛选关卡——报告前执行): 对步骤 1–5 中的每个候选发现,重新阅读所报告
file:line处的代码,并确认该问题确实存在于当前源代码中,而不是基于记忆或假设的代码结构。只有重新阅读后确认的问题才能保留,其余问题应予以删除。请参阅下文的“重新验证流程”。 -
根据以下标准为每个保留的问题评分:
- 使用“严重性标准”指定严重性(Critical/High/Medium/Low)。
- 使用“置信度等级”指定置信度(High/Medium/Low),并删除或明确标记低于报告门槛的问题。
-
生成报告,包含:
- 按严重程度从高到低排列的保留问题,每项均列出其
severity、confidence和已验证的file:line - 发现和修复问题的摘要
- 仍需人工处理的事项
- 改进建议
- 按严重程度从高到低排列的保留问题,每项均列出其
向 Agent 提供:
- 上下文中的审查路径
- 项目类型(语言/框架)
- 用户要求重点关注的领域
该 Agent 擅长:
- 多语言代码分析(Python、TypeScript、Go、Rust)
- 用于准确诊断的 LSP 集成
- 安全漏洞模式(OWASP)
- 性能分析和优化
严重性标准
根据以下标准为每个保留的问题评分。报告按严重程度从高到低排列。
| 严重性 | 标准 |
|---|---|
| Critical | 可被利用的安全漏洞、数据丢失/损坏,或常见执行路径上的崩溃。会阻止发布,合并前必须修复。 |
| High | 在真实输入下表现异常的实际正确性错误、严重性能退化(N+1、无界增长),或没有已知利用方式的身份验证/验证缺口。合并前修复。 |
| Medium | 边界情况中的错误、缺少错误处理、重要行为的测试覆盖缺口,或很快就会造成问题的可维护性缺陷。应修复或登记后续处理事项。 |
| Low | 风格、命名、轻微的可读性问题,或不影响行为的小问题。可选处理。 |
置信度等级
为每项发现分配置信度,并以此决定哪些内容进入报告。如果你无法根据眼前的代码证明缺陷,那么这项发现就只是猜测,而猜测会损害评审的可信度。
| 置信度 | 含义 | 报告规则 |
|---|---|---|
| High | 可以从引用的代码中证明缺陷——你能指出输入和错误结果。 | 报告。 |
| Medium | 缺陷很可能存在,但取决于你未能完全查看的上下文。 | 报告,并标明需要确认。 |
| Low | 属于推测——只是凭直觉判断,并无所读代码作为依据。 | 丢弃,或降级为一行“考虑检查 X”的备注;绝不能将其作为缺陷呈现。 |
报告门槛为 Medium:报告 High 和 Medium 级发现;不要将 Low 置信度的猜测作为发现呈现。
重新验证
在撰写报告之前,根据实际代码重新检查每项候选发现。通过机械式检查排除误报,而不是相信初次阅读的判断:
- 使用
Read重新打开发现对应的file:line,并确认引用的代码仍如发现所述(行号可能变化;假设可能失效)。 - 确认发现所描述的问题确实可以触发——指出具体输入或状态。如果无法做到,则置信度为 Low。
- 仅保留通过上述两项检查的发现。每项报告的发现都必须包含经过验证的
file:line、严重程度和置信度。
Agent 团队(可选)
对于大型代码库的全面评审,可并行安排专门的评审队友:
| 队友 | 关注点 | 价值 |
|---|---|---|
| 安全评审员 | OWASP、机密信息、身份验证缺陷 | 深入分析安全问题,不妨碍质量评审 |
| 性能评审员 | N+1 查询、算法复杂度、资源泄漏 | 并行聚焦性能评审 |
| 正确性评审员 | 逻辑错误、边缘情况、类型安全 | 并行检查功能正确性 |
这是可选项——对于标准评审,即使没有 Agent 团队,这项技能也能正常工作。
相关配置技能
- 如果尚未配置安全扫描 →
/configure:security - 如果尚未设置 lint →
/configure:linting - 如果尚未跟踪测试覆盖率 →
/configure:coverage