Claude Code review 技能

代码审查 / PR审查 —— 利用 AI 高效审查 Pull Request

专题分类:核心功能 / 技能系统

关键词:review、PR审查、代码审查、Pull Request、gh CLI、代码质量、团队协作

一、概述

review 是 Claude Code 内置的一项核心技能(Skill),专门用于审查 Pull Request(PR)。当开发者在终端中调用 /review 命令时,Claude Code 会自动分析当前分支上的待审变更,基于代码库上下文给出全面的审查意见。这项功能将 AI 代码审查能力直接集成到命令行工作流中,无需切换工具或离开终端环境。

review 技能的设计目标是帮助开发团队在代码合入前发现潜在问题,提升代码质量,同时减轻人工审查的负担。它不仅可以检测代码缺陷和安全漏洞,还能评估代码风格、架构合理性以及测试覆盖度等方面。

二、技能介绍与调用方式

review 技能作为一个全局可用的 Slash Command(斜杠命令),在任何对话中都可以直接调用。其调用方式极为简洁,只需在 Claude Code 命令行中输入以下命令:

/review

Claude Code 会自动检测当前 Git 分支相对于其基准分支(通常是 main 或 master)的差异,获取所有待审查的变更内容。无需额外指定分支名称或文件路径,工具会自动推断审查范围。

调用前提:当前工作目录必须是一个 Git 仓库,且当前分支与基准分支之间存在待审查的差异(即尚未合入的提交)。如果当前分支没有未合入的变更,review 技能会提示无变更可审查。

三、功能与目的

review 技能的核心目的是高效审查 Pull Request,确保代码质量。它围绕以下几个关键目标展开:

通过这些维度的全面审查,review 技能帮助开发团队在代码合入前捕获尽可能多的问题,将代码审查从被动的人工检查转变为主动的 AI 辅助质量保障。

四、工作原理(与 gh CLI 的集成)

review 技能在底层与 GitHub CLI(gh)深度集成,利用 gh 命令获取 PR 相关的元数据和上下文信息。其工作流程如下:

  1. 检测基准分支:Claude Code 通过 Git 命令自动识别当前分支的基准分支(如 main、master 或 develop),确定审查范围。
  2. 获取变更差异:使用 git diff 命令获取当前分支与基准分支之间的所有文件变更,包括新增、修改和删除的代码行。
  3. 关联 PR 上下文:如果当前分支存在关联的 Pull Request(通过 gh pr view 检测),review 技能会获取 PR 的标题、描述、评论和讨论历史,作为审查的额外上下文。
  4. 读取代码库上下文:除了变更内容本身,Claude Code 还会读取项目中相关文件(如被修改函数的定义、依赖接口等),确保审查意见基于完整的代码库理解。
  5. 生成审查报告:基于以上所有信息,Claude Code 综合分析变更的影响、风险和收益,输出结构化的审查意见。

以下是通过 gh CLI 手动获取 PR 信息的示例命令,这些命令在 review 技能内部自动执行:

# 查看当前分支关联的 PR gh pr view # 获取 PR 的详细变更 gh pr diff # 查看 PR 上的评论 gh pr view --comments

五、审查内容详解

review 技能会对 Pull Request 进行全方面的审查,涵盖以下几个核心维度:

5.1 变更逻辑分析

深入分析每一处代码变更的逻辑正确性,判断是否有边界条件遗漏、状态转换错误、数据结构使用不当等问题。Claude Code 会基于对代码库整体架构的理解,评估变更是否可能引入回归问题。

5.2 代码规范与风格

检查代码是否符合项目的编码规范,包括命名约定、缩进风格、注释规范等。虽然 review 技能不会替代 linter,但它能从语义层面发现格式工具无法捕捉的风格问题,如不一致的抽象层次、不合理的职责划分等。

5.3 依赖与接口变更

特别关注新增或修改的 API 接口、外部依赖、配置项等,评估其向后兼容性以及可能对其他模块产生的影响。对于接口变更,review 会检查调用方是否已同步更新。

5.4 测试完整性

分析新增代码是否有对应的测试覆盖,判断测试用例是否覆盖了关键路径、边界条件和异常情况。如果发现代码变更量较大但测试缺失,会给出明确的改进建议。

审查深度提示:review 技能的审查深度取决于代码库的大小和变更的复杂度。对于大型代码库的复杂 PR,建议在调用 /review 前先确保 Claude Code 已经加载了足够的代码库上下文(通过对话或索引),以获得更准确的审查结果。

六、审查输出格式

review 技能的输出是一份结构化的审查报告,通常包含以下几个部分:

审查输出的典型格式示例如下:

## PR 审查报告: feature/add-login ### 总体评价 本次 PR 实现了用户登录功能,整体结构清晰,但存在 2 个中 等风险问题和 3 个建议优化项。 ### src/auth/login.ts - [高风险] 第 45 行: 密码错误时返回 "用户不存在" 信息, 存在用户枚举风险。建议返回通用错误信息。 - [中等] 第 78 行: Token 未设置过期时间。建议添加 expiresIn 参数。 ### 积极反馈 - 测试覆盖率达到 85%,覆盖了主要登录流程。 - 错误处理逻辑完善,使用了统一的错误码体系。

七、使用场景

review 技能适用于多种团队协作和代码审查场景:

注意:review 技能的审查意见仅供参考,不应完全替代人工审查。AI 审查虽然能发现许多问题,但对于业务逻辑的深层次理解、团队特有的编码约定、以及涉及产品决策的变更,仍需要人工 reviewer 的判断。最佳实践是将 AI 审查作为人工审查的前置步骤和辅助工具。

八、最佳实践

为充分发挥 review 技能的效果,以下是一些经过验证的最佳实践:

效率技巧:可以在提交 PR 之前先使用 git commit 完成本地提交,然后立即使用 /review 进行自审。发现的问题在推送前修复,可以避免 PR 上出现大量修改记录,保持 PR 历史的整洁。

九、核心要点总结

1. 便捷调用:/review 是一个 Slash Command,一键即可触发完整的 PR 审查流程。

2. 全自动审查:自动检测分支差异、获取 PR 上下文、生成结构化审查报告。

3. 多维度分析:覆盖缺陷检测、安全审计、代码质量、测试覆盖、性能评估等多个维度。

4. gh CLI 集成:底层深度集成 GitHub CLI,自动关联 PR 元数据增强审查准确性。

5. 辅助定位:AI 审查是人工审查的辅助工具,不能完全替代人工 reviewer 的判断。

6. 持续优化:配合小 PR、充分上下文和团队 review 文化,可获得最佳审查效果。

7. 广泛适用:适用于日常审查、新人指导、大规模重构、跨时区协作等多种场景。

review 技能是 Claude Code 在团队协作和代码质量保障方面最具实用价值的功能之一。它将 AI 代码审查能力无缝集成到命令行工作流中,帮助开发团队以更低的成本获得更高的代码质量保障。无论是个人开发者快速自审,还是团队进行高效协作审查,review 技能都能显著提升代码审查的效率和效果。