Guide · 使用教程
CodeRabbit AI 代码审查教程:从仓库授权、PR Review 到人工合并门禁
从一个测试仓库开始配置 CodeRabbit:完成最小权限授权、自动与手动 PR Review、.coderabbit.yaml、团队规则、GitHub Checks、误报处理、增量复查、隐私与数据留存设置,并用两周指标决定是否扩展。
这篇教程会完成什么
本教程会搭建一个可回滚的 CodeRabbit Pull Request 审查流程:只授权一个测试仓库,创建可控 PR,确认自动与手动 Review,添加最小 .coderabbit.yaml,把 CI 结果纳入判断,处理误报与复查,最后再决定是否扩展到团队仓库。
目标不是让机器人“替你批准代码”,而是建立第一层可重复检查。最终合并仍由分支保护、必需 CI、CODEOWNERS 和人类审查者共同决定。
开始前需要准备
准备一个 GitHub、GitLab、Azure DevOps 或 Bitbucket 仓库。初次试验建议使用非生产仓库,或从真实项目复制一个不含密钥与客户数据的最小测试仓库。你还需要:
- 能安装仓库应用或配置集成的管理员权限;
- 至少一个受保护的默认分支;
- 一个会运行的测试或 lint 工作流;
- 一名熟悉业务逻辑的人类审查者;
- 三个测试 PR:边界条件错误、CI 失败、违反团队规则但语法正确。
截至 2026 年 9 月,CodeRabbit 公开仓库可免费审查,私有仓库付费方案提供 14 天试用。套餐与额度会变化,开始团队试点前再次检查 Pricing 页面,并设置负责人记录用量。
第一步:选择最小授权范围
登录 CodeRabbit 后添加代码托管平台集成。GitHub 安装页通常会提供“所有仓库”与“仅选择仓库”,试点阶段选择后者,只授权一个测试仓库。CodeRabbit 的审查、issue 管理或创建修复可能需要读写权限,因此管理员应先查看权限清单,而不是直接给整个组织开放。
完成安装后记录三件事:谁拥有 CodeRabbit 组织管理员权限、应用被授权到哪些仓库、如何卸载并撤销 OAuth 或 GitHub App。把这三项写进内部运行手册,避免试点结束后留下无人管理的访问。
如果仓库包含敏感代码,先查看组织设置中的缓存、Data Retention 和知识库选项。CodeRabbit 文档说明缓存可加密并在最长一周后过期,也可以禁用;knowledge_base.opt_out: true 会移除需要长期留存的知识库数据,但 learnings、历史 PR 上下文等能力也会受限。
第二步:创建第一个可验证 PR
不要用纯格式化 PR 作为第一次测试。创建一个小分支,加入一个真实但无破坏性的逻辑错误,例如过期时间比较写反、重试没有上限,或共享默认对象被意外修改。再配一个能证明正确行为的测试,但先让测试失败。
打开 PR 后,CodeRabbit 默认可自动开始 Review。等待评论时不要连续推送无意义提交;先观察它是否读取 diff、是否等待 GitHub Checks,以及首条有效意见出现的时间。记录:
- 它是否指出预埋问题;
- 是否解释为什么是问题;
- 建议能否直接应用;
- 是否出现与仓库无关的风格评论;
- CI 失败后是否提供了可执行的排查方向。
如果没有自动运行,可以在 PR 评论中输入 @coderabbitai review 手动触发。若手动命令也无响应,再检查应用安装、仓库授权、触发分支、草稿状态与作者过滤,不要先假定服务故障。
第三步:加入最小配置
在仓库根目录创建 .coderabbit.yaml。第一版只解决三个问题:哪些 PR 自动审查、哪些路径不值得花费评论、是否保留知识库数据。不要一开始复制几十条网上配置,未知字段和互相冲突的规则会让排查变难。
示例思路如下,字段必须以当前官方 Configuration 文档为准:
reviews:
auto_review:
enabled: true
drafts: false
knowledge_base:
opt_out: false
若仓库有构建产物、快照、依赖锁文件或自动生成 SDK,应按官方字段添加路径过滤,让机器人重点阅读业务代码、配置、迁移与测试。路径过滤要逐步增加:先观察噪声,再排除有证据的低价值文件,避免把真正重要的生成配置一起跳过。
常见问题
- CodeRabbit 安装后会自动审查所有 PR 吗?
- 默认可以自动审查符合条件的 PR,但会受到仓库授权、目标分支、Draft 状态、作者、路径和 .coderabbit.yaml 设置影响。
- 如何手动触发 CodeRabbit Review?
- 在 Pull Request 评论中输入 @coderabbitai review。如果没有响应,检查应用授权、触发过滤和详细日志。
- .coderabbit.yaml 应该一次配置完整吗?
- 不建议。先配置自动审查与隐私选项,再根据真实噪声逐步添加路径和团队规则,每次保留可回滚的小改动。
- CodeRabbit 可以结合 CI 失败吗?
- 可以读取 GitHub Checks 等结果并给出排查建议,但 CI 本身必须稳定且日志经过脱敏;Required check 失败时仍应阻止合并。
- 私有代码会被用于训练吗?
- CodeRabbit 官方说明私有代码不用于训练;缓存、索引和知识库具有可配置的留存方式。企业仍应审查当前 DPA 与模型提供商。
- 可以完全关闭数据留存吗?
- 可以关闭缓存或组织级 Data Retention,也可设置 knowledge_base.opt_out;这样会限制 learnings 与历史上下文等功能。