Claude Code 的 /code-review 是一条读取你当前的差异(未提交的修改,以及领先于上游的提交),专门查找正确性 bug 并报告的命令。它是 Claude Code 自带的内置技能,不用安装任何 GitHub 应用,直接在终端里就能运行。输入 /review 也会执行同样的操作。

本文依据 Claude Code 官方文档原文(Code Review 中的“Review a diff locally”一节、Find bugs with ultrareview、Commands)和 CHANGELOG,说明它能做什么、各个级别(low 到 max)与 ultra 怎么选,以及 --fix 和 --comment 的用法。文中所有规格都已于2026年10月2日对照原文确认。第9章和第10章还介绍了我在本站代码上实际运行 /code-review high 的结果,以及使用中发现的缺点。

一图看懂 /code-review

来源:Claude Code 官方文档“Code Review”“Find bugs with ultrareview”(2026年10月2日确认)

作用

找出差异中的 bug

报告正确性 bug。视模型和级别而定,还会给出代码整理建议。

级别

从 low 到 max 中选

级别越低,只报把握大的问题;越高,覆盖面越广。不指定时沿用你上次输入的级别。

费用

计入常规用量

low 到 max 消耗的是套餐的用量上限,不单独收费。

ULTRA

在云端深度审查

Pro 和 Max 可免费用3次。之后每次大约花费 $5–25 的用量额度。

1. /code-review 是什么:找出差异中 bug 的内置技能

Commands 参考页对它的说明是:审查当前的差异,或你传入的 PR 编号、分支、路径,查找其中的正确性 bug。该页接着写道,视模型和 effort 级别而定,审查范围还会涵盖可以整理代码的地方;Code Review 页面则说,它会报告正确性 bug,以及复用、简化、效率方面的整理建议。也就是说,找 bug 是主要任务,整理建议视条件附带给出。

语法如下:

/code-review [low|medium|high|xhigh|max|ultra] [--fix] [--comment] [pr#|branch|path]

有四个特点值得先了解:

  • 在后台运行。审查以拥有独立上下文窗口的子智能体形式运行,不会挤占你的对话。完成后,结果会送回你的对话中。
  • 会读 CLAUDE.md,但不读 REVIEW.md。REVIEW.md 是后文介绍的 GitHub 应用版 Code Review 使用的指令文件。
  • /review 是别名。据文档介绍,在 v2.1.223 之前,/review 是一条单独的命令,只对 GitHub PR 读一遍。现在它和 /code-review 完全相同。
  • 它的旧名是 /simplify。据 CHANGELOG 记载,/simplify 在 v2.1.147 中更名为 /code-review,之后 /simplify 又作为一条只做代码整理、不找 bug 的独立命令回归。

在终端和 -p 运行中,结果以文字形式出现在回复里。在桌面应用等会请求结果列表的应用中,结果以列表显示,每一项都带有文件位置、一句话摘要和 correctness 之类的类别标签。之后让 Claude 修复时,每一项会被标记为已修复、已跳过或无需修改。

2. 基本用法:指定审查对象

最基本的用法是在正在工作的会话里不带参数直接输入。

# 审查领先于上游的提交 + 未提交的修改
/code-review

# 指定级别审查
/code-review high

# 传入 PR 编号,审查同事的拉取请求
/code-review high 1234

# 传入分支范围
/code-review main...my-feature

不带参数时,按文档的说法,对象是当前分支领先于上游的提交,加上所有未提交的修改。如果分支和工作区都没有新内容,就没有可报告的东西。要审查别的内容,就传入对象:

传入的内容示例审查对象
不传/code-review领先于上游的提交 + 未提交的修改
文件路径/code-review src/auth.ts该文件
PR 编号/code-review 1234该拉取请求
分支名/code-review my-feature该分支
范围/code-review main...my-feature指定的引用范围

除非加上 ultra,否则去掉级别和标志之后剩下的部分,都会被当作审查对象。例如 /code-review /fix-issue 123 并不会把 /fix-issue 当作第二个技能加载,而是把 /fix-issue 123 这段文字当作对象来读。

以下几种情况下,它不在后台运行,而是在对话中前台运行:前一次审查还在进行时再次运行;在 -p 或 Agent SDK 等非交互模式下运行;把环境变量 CLAUDE_CODE_DISABLE_BACKGROUND_TASKS 设为 1(这也会关闭其他所有后台功能)。

3. 级别怎么选:从 low 到 max

级别是在“审查看得多广”和“结果要有多大把握”之间取舍。文档说明,在 low 和 medium 下,只报告最有把握的问题,所以误报更少;而 high 到 max 覆盖面更广,可能夹杂把握较小的问题。

级别与结果的特点

来源:官方文档“Code Review”中的 Tune effort and arguments(2026年10月2日确认)

low
medium
high
xhigh
max

low / medium

只报把握大的问题。数量少,误报也少。

high / xhigh / max

覆盖面更广。可能夹杂把握较小的问题,需要自己甄别。

判断的标准是你能花多少精力去读结果。如果想在工作间隙快速检查一下,用 low 或 medium;如果想在合并前多抓一些问题,并且能自己剔除误报,就用 high 及以上。这种划分依据的是文档的说明。级别越高消耗的 token 越多,这一点和 effort 的一般规律相同,但官方文档没有给出各级别所需时间或用量的具体数字。effort 本身是什么,请参阅本站关于 Claude Code effort 设置的文章。

不指定级别时,沿用“你上次输入的级别”

不输入级别时,审查会使用你最近一次亲自输入的 low 到 max 之间的级别。之前会话中输入的级别也算在内,这时会显示 Reusing high effort, the level you typed last time 之类的提示。具体规则如下:

  • 在交互式会话中输入 /code-review high 这样的命令时,记住的级别会被更新。
  • 在非交互的 -p 运行中传入的级别不会被记住。
  • ultra 既不使用也不更新记住的级别。
  • 如果从未输入过级别,就使用会话当前的 effort。

文档还注明:在 v2.1.223 之前,不带级别的 /code-review 总是使用会话当前的 effort。如果你按旧的行为习惯省略级别,它可能会以比预想更高(或更低)的级别运行,所以在意的话,每次都写明级别。

4. --fix 与 --comment 的用法

--fix:连修复也一并完成

审查结束后,把结果应用到你的工作区。

--comment:发布到 PR

在 GitHub PR 上发布行内评论,在 GitLab MR 上发布一条备注。

--fix 的修改可能无法用 /rewind 撤销

这是最需要留意的地方。据文档介绍,后台审查中 --fix 做出的修改发生在会话的检查点之外,所以 /rewind 撤销不了。要还原,请用 git。如果审查在前台运行(前一次审查仍在进行、-p 等情况),修改发生在你自己的回合中,/rewind 照常可以还原。

# 用 --fix 之前先提交当前状态,方便回退
git add -A && git commit -m "wip: before code-review --fix"
/code-review medium --fix

# 不满意结果时,用 git 撤销
git diff
git restore .

也可以先不加 --fix 运行审查,看完结果后再吩咐“只修第1条和第3条”。如果拿不准是否所有结果都该应用,这样更稳妥。检查点的详细说明请参阅本站关于检查点和 /rewind 的文章。

--comment 发布到哪里

  • GitHub 拉取请求:把结果作为行内评论发布到相应的行上。
  • GitLab 合并请求:通过 GitLab 的 CLI 工具 glab 作为一条备注发布(v2.1.257 及以后)。如果没有安装 glab,结果只会显示在终端里。

在 GitLab 上,请以 URL 或 !123 的形式传入 MR。只有当 origin 位于 gitlab.com 时,单独的数字或分支名才会被当作 MR;对于自建的 GitLab 实例,文档要求使用 URL 或 !123。至于发布到 GitHub 是否需要 gh 等认证,截至2026年10月2日官方文档没有说明。

5. ultra:多智能体云端审查与费用

/code-review ultra 是一种深度审查,它不在你的电脑上运行,而是在 Anthropic 云端的沙箱中并行运行多个审查智能体。它是名为 ultrareview 的研究预览功能,在可用的账号上,/ultrareview 是它的别名。官方文档列出了它相对于本地 /code-review 的三个优点:

  • 信号更准:报告的每个问题都会被独立复现和验证,因此结果集中在真正的 bug 上,而不是风格建议。
  • 覆盖更广:更多智能体并行探查改动,能发现本地审查可能漏掉的问题。
  • 不占用本地资源:它在云端运行,期间你可以继续在终端里做别的事。

费用与免费次数

ultra 不从套餐包含的用量中扣除,而是从用量额度(额外用量)中计费。

套餐免费次数免费次数用完后
Pro3次按用量额度计费
Max3次按用量额度计费
Team / Enterprise无按用量额度计费
  • 免费次数:Pro 和 Max 的3次是每个账号一次性发放的,不会重置。
  • 每次费用:免费次数用完后,视改动规模而定,通常每次花费 $5 到 $25 的用量额度。每次运行前,启动对话框都会显示预估费用。
  • 次数的计算方式:云端会话一开始就算一次。中途停止或失败,也会用掉一次免费次数。付费审查按实际运行的部分计费。
  • 前提条件:不开启用量额度,付费审查就无法启动。可以用 /usage-credits 查看。是否用用量额度付费的确认,每个对话只出现一次。

“$5–25”算贵还是便宜,取决于和什么比。与 low 到 max 的 /code-review 相比,后者只消耗套餐的用量上限、不单独收费,ultra 则是额外支出。而与后文介绍的 GitHub 应用版 Code Review(平均每次审查 $15–25)相比,两者的价格区间有重叠。不过 Code Review 是在每个 PR 上自动运行的另一套机制,数字的表述方式也不同(“平均”与“通常的区间”),无法直接比较。

耗时、范围与不可用的环境

  • 耗时:通常5到10分钟。它在后台运行,可以用 /tasks 查看进度或停止。中途停止不会返回部分结果。
  • 范围:不带参数时,审查的是当前分支相对于仓库默认分支的差异,外加未提交和已暂存的修改。这和本地 /code-review 的“领先于上游”基准不同。像 /code-review ultra develop 这样传入分支名,可以更改基准。
  • 审查 PR:像 /code-review ultra 1234 这样传入编号时,不会从你的电脑上传任何内容,而是由云端直接克隆该 PR。适用于 github.com 和已连接的 GitHub Enterprise Server。
  • 上限:分支审查默认最多覆盖500个变更文件和8,000行变更(文档注明这些数值可能调整)。
  • 不可用的环境:需要用 claude.ai 账号登录,无法通过 Amazon Bedrock、Google Cloud 的 Agent Platform、Microsoft Foundry 使用,启用了零数据保留(Zero Data Retention)的组织也不能用。不可用时,/code-review ultra 会作为本地审查运行。

分支审查会把本地仓库的状态打包上传到云端。.env、*.tfvars 等名称看起来像凭据的文件,其未提交的修改按照与上传到云端会话相同的规则处理。云端会话的整体机制,请参阅本站关于云端会话的文章。

把结果发布到 PR(--post)与从脚本运行

用 ultra 审查 github.com 上的 PR 时,可以以你自己的 GitHub 账号,把结果作为一条评论发布到 PR 上(v2.1.227 及以后)。这是一条普通评论,不是 review,也不是批准,默认不发布(--no-post)。/code-review ultra 1234 --post 会在启动对话框中预先选中“发布”,但开始前仍然需要你确认。发布在审查完成时才开始,所以要让会话一直开着,直到审查结束。

在 CI 或脚本中,请使用 claude ultrareview 子命令。它会等待结果并输出到标准输出(可用 --json、--timeout(默认45分钟)和 --post)。claude -p '/code-review ultra' 只会启动审查,不等待就退出,所以拿不到结果;需要用用量额度付费时,它甚至不会启动。

# 从脚本用 ultra 审查 PR 1234 并获取结果
claude ultrareview 1234

# 以默认分支以外的分支为基准
claude ultrareview origin/main

6. 与相似功能的区别

Claude Code 有好几个名字相近的审查功能。其中名为“Code Review”的 GitHub 应用功能和 /code-review 命令写在同一个文档页面里,尤其容易混淆。

比较项/code-review/code-review ultra/simplify/security-reviewCode Review(GitHub 应用)claude-code-action
用途正确性 bug经验证的 bug仅代码整理安全漏洞PR 的 bug 与回归通用自动化
运行位置你的电脑云端你的电脑你的电脑Anthropic 的基础设施你自己的 Actions
对象差异、PR、分支、路径相对默认分支的差异、PR改动过的代码相对 origin 默认分支的差异PR取决于工作流
修复加 --fix 时应用加 --fix 时应用直接应用文档未说明不修复取决于工作流
费用计入常规用量免费3次后 $5–25文档未说明文档未说明平均 $15–25API 费用 + Actions 分钟数
可用对象所有套餐claude.ai 账号未注明限制未注明限制Team / Enterprise由仓库管理员配置
  • /simplify:四个智能体并行检查是否复用了现有的辅助函数、能否简化、效率如何、改动的抽象层次是否合适,然后直接应用修复。它不找正确性 bug。Code Review 页面还建议,如果你曾在脚本里用 /simplify 来找 bug,应改用 /code-review --fix。
  • /security-review:检查当前分支与 origin 默认分支之间的差异,查找注入、认证问题、数据泄露等安全漏洞。需要有 origin 远程仓库。
  • Code Review(GitHub 应用):由组织的 Owner 启用后,每当 PR 被创建、每次推送或有人写下 @claude review 时,Anthropic 基础设施上的多个智能体就会检查该 PR,并留下逐行评论。它是仅面向 Team 和 Enterprise 的研究预览(启用零数据保留的组织不可用)。费用随 token 数变化,平均每次审查 $15–25,平均耗时20分钟,从用量额度中计费,与套餐上限分开。可以用 REVIEW.md 调整它要指出的内容。
  • claude-code-action:在你自己仓库的 GitHub Actions 工作流中运行 Claude Code。官方文档中的审查示例调用的是插件版 code-review 技能(/code-review:code-review --comment),在 PR 上发表评论。费用是 Claude API 的价格(或订阅的 token)加上 GitHub Actions 的运行时间。

按“在哪里运行、由谁付费、看什么”来区分,就清楚多了。想在本地检查自己的差异,用 /code-review;想在合并前深入审查,用 ultra;想让团队的每个 PR 都自动审查,用 GitHub 应用版 Code Review 或 claude-code-action。

7. Claude 自行启动的情况与禁止方法

Claude 可能会自行启动 /code-review。如果你用自然语言请它审查改动,它可能不等你输入命令就运行这个技能;以 /code-review 为提示词的定时任务也会执行审查。不过,定时任务绝不会启动 ultra(云端审查)。ultra 只有在你亲自输入 /code-review ultra 时才会运行。

如果想禁止 Claude 和定时任务启动它,同时保留自己手动输入时的使用,可以在 ~/.claude/settings.json 等设置文件中加入以下内容:

{
  "skillOverrides": {
    "code-review": "user-invocable-only"
  }
}

后台审查以子智能体的形式运行。子智能体如何处理上下文和模型,请参阅本站关于子智能体和智能体团队的文章。

8. 什么时候用哪个

官方文档的比较表中写道,本地 /code-review 最适合在反复修改时快速获得反馈,ultra 则适合在合并较大改动前求得把握。套用到日常工作流程中,大致如下:

各工作阶段该用哪个

来源:根据官方文档“Find bugs with ultrareview”中的 How ultrareview compares to /code-review 整理

1. 写代码时

用 /code-review low 或 medium,快速只抓把握大的问题。

2. 推送前

用 /code-review high 看得更广。需要修复时,先提交,再用 --fix。

3. 同事的 PR

用 /code-review high 1234 阅读,需要时用 --comment 把结果留在 PR 上。

4. 合并大改动前

先看预估费用,再运行 /code-review ultra。Pro 和 Max 的3次免费机会就留在这里用。

ultra 的3次免费机会不会重置,所以与其用在小修改上,不如留给影响范围大的改动,或者本地审查没能得出结论的改动。同样,想专注于安全漏洞时用 /security-review,想整理可读性而不是找 bug 时用 /simplify,按用途区分使用,这正是文档对它们的定位。

9. 在本站代码上实际试用

2026年10月2日,我对本站公开的 AI 图像检查工具的代码运行了 /code-review high。这个工具完全在浏览器内读取图像的元数据和来源信息(C2PA),审查对象是四个文件:界面逻辑、解析逻辑(Web Worker)、控制器和页面模板。运行环境是 Claude Code 桌面应用(内置 Claude Code 2.1.284,模型 Opus 5.5),时间点是我自己刚找过 bug 并修好5处之后。

运行一次的结果

来源:作者实测(2026年10月2日,/code-review high,4个对象文件)

指出的问题

10

确认为真实 bug

9

代码整理建议

1

每一条结果都写明了“哪个文件的哪一行”以及“什么输入会导致什么后果”。我把每一条都对照了该工具用来读取图像元数据的库(exifr)的源代码,以及我实际制作的测试图像,然后把确认属实的9条全部修好了。主要内容如下:

问题类型具体内容
对库的错误假设图像的注释字段(UserComment)、Windows 的注释字段和 WebP 的相机信息实际上都没有被读取(原因在于库的默认设置和它支持的格式)
判定逻辑的漏洞在某种组合下,作为素材使用的另一张图像的记录,可能被显示成可信机构的签名
卡住无法恢复网络停滞时,加载库没有超时设置,会一直停在加载状态
并发处理快速连续拖入图像时,两张图像的处理会同时进行,结果可能混在一起
大文件对于较大的 PNG,还没读到写在末尾附近的数据就停止了读取
字符串处理从图像中读出的字符串含有特殊字符时,显示的文字可能出错

也就是说,即使是在我自己刚检查并修复过之后,仍然残留着9个不同类型的 bug。尤其是关于假设(“这个库应该是这样工作的”)的问题,不读库的源代码很难发现。不过,这只是在一个代码库上运行一次的结果。它不一定每次都能以同样的比例找出真实 bug,我也没有与 low、medium、max 做比较,没有试用付费的 ultra。

10. 缺点与注意事项

结合实际使用和官方文档,需要注意的有以下五点:

  • 会消耗用量。本地审查同样计入平时的 Claude 用量,级别越高消耗越多。ultra 方面,Pro 和 Max 用完3次免费机会后(Team 和 Enterprise 从一开始),每次大约要花 $5–25 的用量额度。
  • 不要全盘接受结果。文档本身就说 high 及以上可能夹杂把握较小的问题。这次10条中有9条属实,但逐条核实仍然要花功夫。
  • --fix 无法用 /rewind 撤销。后台做出的修改只能用 git 还原,所以使用前请先提交。
  • 只检查代码的正确性。它不检查文字或配置内容是否与事实相符。例如本站常见的“文章内容与官方规格不一致”这类问题,就不在它的检查范围内。
  • Claude 可能自行启动它。如果不希望这样,可以用第7章的设置限定为只能手动运行。

我的感受是:写完新代码或做了较大改动后,用 high 运行一次,这种用法值得花费的精力和用量。反过来,它不适合文字修改或细小的配置变更。

总结

/code-review 是一个以正确性 bug 为重点,审查本地差异或 PR 的内置技能。它在后台运行,不会打断你的工作,费用也在常规用量之内。low 和 medium 只给出把握大的问题;high 到 max 覆盖面更广,但需要甄别结果;不指定级别时,沿用你上次输入的级别。

连修复也一并完成的 --fix 很方便,但后台的修改无法用 /rewind 撤销,所以先提交是稳妥的做法。想深入审查时,ultra 会在云端花大约5到10分钟,只返回经过验证的问题;Pro 和 Max 有一次性的3次免费机会,之后每次大约花费 $5–25 的用量额度。名字相近的 GitHub 应用版 Code Review 和 claude-code-action 是不同的东西,运行位置和费用都不一样。

我在本站代码上运行了一次,即使是在自己刚修复过之后,10条结果中仍有9条是真实的 bug。虽然需要逐条核实,但在写完新代码或做了较大改动后,非常值得运行一次。

FAQ

Q. /review 和 /code-review 有什么区别?

A. 现在两者相同。/review 是 /code-review 的别名,可以使用同样的级别和标志。据官方文档介绍,在 v2.1.223 之前,/review 是一条单独的只读命令,只对 GitHub PR 审查一遍。

Q. 使用 /code-review 需要额外付费吗?

A. low 到 max 不需要。在官方文档的比较表中,它的费用是计入常规用量。需要额外付费的是 ultra:Pro 和 Max 用完3次免费机会后,每次大约花费 $5–25 的用量额度。

Q. ultra 的3次免费机会每月重置吗?

A. 不会。官方文档说明,Pro 和 Max 的3次是每个账号一次性发放的,不会重置。中途停止或失败的审查也算一次。Team 和 Enterprise 没有免费次数。

Q. --fix 做出的修改能撤销吗?

A. 请用 git。在后台运行的审查所做的修改发生在检查点之外,/rewind 撤销不了。如果审查在前台运行(前一次审查仍在进行、-p 等情况),可以用 /rewind 还原。拿不准的话,使用 --fix 之前先提交。

Q. REVIEW.md 中的规则对 /code-review 有效吗?

A. 无效。本地 /code-review 遵循 CLAUDE.md,但不读 REVIEW.md。REVIEW.md 是 GitHub 应用版 Code Review 的指令文件。希望本地审查遵守的规则,请写进 CLAUDE.md。

参考来源

所有来源均已于2026年10月2日对照原文确认。官方文档注明 ultrareview 是研究预览功能,其功能、价格和可用范围可能会有变化。