本页面是对 CodeRabbit 的概念性介绍。

CodeRabbit 是一款由 AI 驱动的代码审查工具,能够在几分钟内为 Pull Request 提供具备上下文感知能力的反馈,从而减少人工代码审查所需的时间和精力。它通过提供全新的视角并捕捉人工审查常常遗漏的问题,来补充人工审查,提升整体审查质量。

开发者可以直接在已有的 Git 平台的 Pull Request 界面中与 CodeRabbit 机器人交互,补充上下文、提出问题,甚至让机器人生成代码。随着使用时间的增长,CodeRabbit 会从用户的输入中学习并优化其建议。

核心功能

CodeRabbit 的核心功能包括:

  • 可快速集成到主流 Git 平台和工作流程中。
  • 对每次提交运行数十个开源且符合行业标准的代码分析器。
  • 以熟悉的 Pull Request 评论形式执行代码审查。
  • 通过评论中的自然语言对话与贡献者互动。
  • 学习并适应你团队的代码风格和审查偏好。
  • 提供代码贡献活动的可观测性仪表盘。
  • 注重隐私与安全,不保留所分析的代码。
  • 公共仓库免费使用,私有代码库提供灵活的定价方案。

无缝集成到工作流程

CodeRabbit 会将审查结果以评论的形式附加在 Pull Request 上,使用的正是你团队已经在用的 Git 平台。后续的提交也会促使 CodeRabbit 根据之前的审查上下文继续进行审查。

每次代码审查时,CodeRabbit 会将相关的代码变更通过一系列 行业标准的代码 linter、安全分析器等工具 进行处理。然后它会将这些工具的输出整合为高层次的分析建议,帮助你发现需要关注和改进的地方。

你的团队可以通过回复 Pull Request 中的评论与 CodeRabbit 展开对话,用自然语言提问或指出其审查中的问题。CodeRabbit 会继续展开合适的对话,提供更多关于代码变更的见解,或根据你的反馈调整自己的审查风格。

可自定义的审查偏好

你与 CodeRabbit 的对话将帮助它学习你团队的审查偏好,并将这些偏好应用到该仓库后续的所有审查中。

例如,如果 CodeRabbit 使用 linter 建议你的 Pull Request 采用四空格缩进,但你们团队实际使用的是两空格缩进,你可以在 Pull Request 的评论中直接告诉它。CodeRabbit 会确认你的反馈,并在该仓库的后续审查中作出相应调整。

关于这个功能的视频介绍,请查看 CodeRabbit Learnings

如果你需要更细致地调整 CodeRabbit 的行为,可以 添加一个专用的 CodeRabbit 配置文件 到你的仓库,或者通过 CodeRabbit 的 Web 界面进一步设置偏好。配置文件中可以包含 基于路径的审查指令,告诉 CodeRabbit 如何审查代码库中的不同文件。

无论你是否进行定制,CodeRabbit 默认设置已足够开箱即用,能够在引入到仓库后几分钟内开始有效地审查 Pull Request。

Git 平台集成

CodeRabbit 只需点击几下即可与多个主流 Git 平台集成:

  • GitHub、GitHub Enterprise Cloud、GitHub Enterprise Server,
  • GitLab、GitLab Self-Managed
  • Azure DevOps
  • Bitbucket Cloud

更多信息请参见 Supported Git Platforms

问题管理平台集成

你可以将 CodeRabbit 与问题管理平台集成。这样你就可以在代码审查过程中让 CodeRabbit 创建工单,或直接在问题评论中与 CodeRabbit 聊天。支持的平台包括:

  • GitHub Issues
  • GitLab Issues
  • Jira
  • Linear

更多信息请参见 Issue CreationIssue Chat

数据隐私与安全

CodeRabbit 仅收集提供代码审查服务所需的最少信息。我们的隐私与安全策略围绕数据的“短暂性”展开:

  • 所有对大语言模型(LLM)的查询仅存在于内存中,在查询完成后不做任何保留。
  • 我们不会使用你的代码、代码审查或其他数据来训练 LLM。
  • CodeRabbit 不会将任何用户数据分享给第三方。
  • 所有用户数据都是保密的,并按组织进行隔离。
  • 我们的数据收集与存储实践符合 SOC 2 和 GDPR 标准。

更多有关数据保护的信息,请访问 CodeRabbit Trust Center

灵活的定价方案,公共仓库免费

公共仓库可以免费使用 CodeRabbit 的 Pro 版本,包括本文所述的所有代码审查功能。但可能存在速率限制。

对于私有仓库,我们提供多个定价层级。从免费版本(提供无限次的代码变更摘要功能)到企业级版本(包含高级功能和 SLA 支持)不等。详细信息请参见 Pricing

在 VSCode 中审查本地变更

CodeRabbit 还提供一款免费的 VSCode 插件,将部分核心功能带到 VSCode 中。这能让你在将更改提交为正式 Pull Request 之前,就在本地使用 CodeRabbit 的能力优化和清理你的代码变更。