随着代码智能体越来越普及,瓶颈已从编写代码转移到了审阅代码。 Devin Review 是 Devin 网页应用中的全功能代码审查平台,可以将庞大而复杂的 PR 转化为结构直观的差异视图 (diff) 和精准的解释说明。它支持 GitHub,包括 GitHub Enterprise Server 和 Enterprise Cloud。Documentation Index
Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
Use this file to discover all available pages before exploring further.
功能
智能 diff 组织
按逻辑对变更分组,将相关编辑组织在一起,而不是按字母顺序排列。
复制与移动检测
检测代码是否被复制或移动,并清晰展示变更,而不是显示完整删除和插入。
Bug Catcher
检查缺陷并按置信度等级标注。严重缺陷需要立刻处理。
GitHub 兼容性
在 Devin Review 中直接发表评论、批准 PR、请求更改,并与 GitHub 实时同步。
代码库感知聊天
就该 PR 提问,并基于其余代码库的相关上下文获取解答。你也可以在 diff 视图中的任何评论、缺陷或标记处直接向 Devin 提问。
PR 工作流程操作
直接在 Devin Review 中合并、关闭、转换为草稿、标记为可供审查,以及切换自动合并,无需离开当前页面。
通过聊天生成代码修改
让聊天 Agent 进行代码编辑。查看建议的代码修改,然后将其作为一次 commit 应用到 PR 分支,无需离开 Devin Review。
入门
- Devin webapp — 前往 app.devin.ai/review,查看按类别组织的未处理拉取请求 (PR) (指派给你、你创建的、请求你评审的) 。当 Devin 创建 PR 时,你会在聊天中看到橙色的 “Review” 按钮。
- URL 快捷方式 — 对于任何 GitHub.com PR 链接,将 URL 中的
github.com替换为devinreview.com。对于私有 PR,请先登录 Devin 或使用 CLI。 - GitHub Enterprise — 将完整的 PR URL 粘贴到 app.devin.ai/review 上的 Devin Review 页面中。所有 GitHub 产品 (GitHub.com、Enterprise Server、Enterprise Cloud) 都具有相同的功能。
- CLI — 在本地克隆的仓库中运行
npx devin-review {pr-url}。详情见下文的 CLI。
支持的 Git 提供商
| 功能 | GitHub | GitLab | Bitbucket | Azure DevOps |
|---|---|---|---|---|
| 查看差异和分析结果 | 是 | 即将推出 | 否 | 否 |
| Bug Catcher | 是 | 即将推出 | 否 | 否 |
| 代码库感知聊天 | 是 | 即将推出 | 否 | 否 |
| 通过聊天生成代码修改 | 是 | 即将推出 | 否 | 否 |
| 评论和评审 | 是 | 即将推出 | 否 | 否 |
| 合并 / 关闭 / 转为草稿操作 | 是 | 即将推出 | 否 | 否 |
| 自动合并 | 是 | 即将推出 | 否 | 否 |
| 自动审查 | 是 | 即将推出 | 否 | 否 |
权限
- Use Devin Review — 访问 Devin Review 并配置个人审查设置 (例如自助注册) 所必需。没有此权限时,Review 选项卡会隐藏。默认授予所有成员和 Admin。
- Manage Devin Review — 管理自动审查设置、发布选项以及 Settings > Review 中其他管理员配置所必需。默认仅授予 Admin。
**Enterprise 账户:**这些是账户级权限。只有主组织中拥有 Manage Devin Review 的用户才能管理审查设置。非主组织中的用户可以自助注册,但无法更改管理员设置。
PR 工作流程操作
- Merge — 按仓库已配置的合并策略 (merge commit、squash 或 rebase) 合并 PR。合并按钮会显示 PR 当前是否可合并,以及必需检查的状态。
- Close — 关闭 PR 而不合并。可在合并按钮旁边的下拉菜单中使用。
- Convert to draft — 将打开的 PR 转为草稿状态。当 PR 处于打开状态且尚未是草稿时,可在下拉菜单中使用。
- Mark ready for review — 将草稿 PR 标记为可供审查。对于草稿 PR,合并栏中会显示“准备好接受审查”按钮。
- Auto-merge — 在合并按钮的下拉菜单中启用或禁用 GitHub 自动合并。启用后,PR 会在所有必需检查通过后自动合并。合并栏会显示当前的自动合并状态,包括启用人。
自动审查
自动审查何时运行?
- 打开非草稿 PR 时
- 向 PR 推送新的提交时
- 将草稿 PR 标记为“准备审查”时
- 将已加入自动审查的用户添加为审查人 (Reviewer) 或负责人 (Assignee) 时
触发模式
- 自动审查 (默认) — 以下所有事件都会触发审查:PR 打开、推送新提交、草稿标记为可审查,以及添加审查者/负责人。
- 在创建 PR 时 — 仅当 PR 首次打开,或草稿 PR 被标记为可审查时,才会触发审查。之后推送到该 PR 的提交不会触发新的审查。
自助注册 (所有用户)
- 前往 Settings > Review
- 点击 “Add myself (@yourusername)” 为自己注册
管理员配置
- Repositories — 将代码仓库添加到自动审查列表,以自动审查该仓库中的所有 PR。使用下拉菜单从已连接的代码仓库中搜索并选择。
- Users — 查看并管理整个组织中所有已加入的用户。可以将任意 GitHub 用户名添加到自动审查列表。
- Insert link in PR description — 启用时 (默认) ,Devin 会在 PR 描述中添加指向此次审查的链接。
发布到 GitHub
- Post GitHub PR checks — 启用时 (默认) ,Devin 会为每次审查在 PR 上创建一个 commit 状态检查。这样你就可以在 PR 的检查列表中直接查看审查结果。
- Bugs — 将 bug (可能的错误或异常行为) 作为 PR 评论发布。
- Flags (investigate) — 将 investigate 标记 (值得进一步仔细检查的潜在问题) 作为 PR 评论发布。
- Flags (note) — 将信息类标记 (可能无需采取行动的观察项) 作为 PR 评论发布。
Enterprise 账户: 设置会应用于 Enterprise 中所有组织。只有主组织中具有企业管理员
权限的用户可以管理这些设置。非主组织中的用户只能自行开通自动审查。
自动审查不适用于未连接到你组织的公共代码仓库。
Bug Catcher
Bugs
- 严重 — 置信度高, 需要立即处理的问题
- 一般 — 严重程度较低,但仍应进行审查的问题
标记
- Investigate (需排查) — 需要进一步排查的标记。你应当自行审查被标记的代码,并确认是否存在实际的 bug 或问题。
- Informational (仅供参考) — Bug Catcher 要么已确认其是正确的,要么是在解释某段逻辑的工作方式。 这些标记帮助你理解代码变更,而无需你采取任何行动。
解决发现项
评审操作
开始 Review
解决评论
代码所有者指示器
自动修复
如何启用
- 通过 PR 审查设置弹出层 — 在任意 Devin Review 页面,点击设置图标 (三个点) ,然后打开 Enable Autofix 开关。此开关仅会出现在由 Devin 提交的 PR 上。
- 通过嵌入式 PR 审查设置 — 在 Devin 会话中嵌入的 Devin Review 视图里,打开设置弹出层,然后打开 Enable Autofix 开关。
- 通过全局自定义设置 — 前往 Settings > Customization > Pull request settings > Autofix settings - bot comments,然后执行以下任一操作:
- 将模式设置为 Respond to specific bots only,并将
devin-ai-integration[bot]添加到允许列表,或 - 将模式设置为 Respond to all bot comments。
- 将模式设置为 Respond to specific bots only,并将
权限与限制
- 只有组织管理员可以更改此设置。
- 如果 bot 评论模式设置为 Respond to all bot comments,Auto-Fix 开关会显示为已启用,但你无法在 PR 审查设置中更改它。请使用 Customization 设置来修改 bot 评论模式。
- Devin Review 的 No Issues Found 汇总评论始终会被忽略。只有包含实际问题的评论才会触发 Auto-Fix。
如果当前在你的代码库中,Devin Review 的反馈被设置为忽略,你会在会话时间线上看到启用它的提示。
CLI
安装和使用
- 基于 Git 的 diff 提取 — CLI 使用你本地的 Git 访问权限获取 PR 分支并计算 diff。这意味着你需要在本机上对该代码仓库具有读取权限。
- 隔离的 worktree 检出 — CLI 会在一个缓存目录中创建一个 git worktree 来检出 PR 分支。这样可以保持你的工作目录不受影响 —— 无需暂存 (stash) 、无需切换分支。审核完成后,该 worktree 会自动清理。
- 将 diff 发送到 Devin 服务器 — 计算出的 diff 和文件内容会被发送到 Devin 的服务器进行分析。
隐私与访问控制
- 默认仅限本地访问 — 当你运行
devin-review时,它会在你的机器上启动一个 localhost 服务器,用于提供安全令牌。只有你本地机器上的进程可以访问该令牌,这意味着在未登录的情况下,只有你可以查看评审页面。 - 转移到你的 Devin 账户 — 如果你登录了一个对该 GitHub 组织有访问权限的 Devin 账户,评审会话会被转移到你的账户下。这样你就可以从其他设备访问评审,并与团队成员共享。
devin-review 可以在你的本地机器上执行命令,以收集更多用于查找 bug 的上下文信息。这比仅基于 diff 的评审能进行更深入的分析。
Bug Catcher 只能执行一组受限的、作用范围限定在 worktree 目录内的 只读 操作:
- 文件读取 — 读取代码仓库中的文件内容
- 搜索 — 使用 grep 搜索模式、使用 glob 匹配文件名
- Bash 命令 — 仅限只读命令,如
ls、cat、pwd、file、head、tail、wc、find、tree、stat和du
提交与评论归属
- Bug 发现、标记和自动注释始终以 Devin bot 的身份出现。
- 当用户通过 Devin Review 编写评论或评审时,这些内容会显示为该用户的 GitHub 身份。
- 当用户让聊天代理进行代码修改时,由此产生的提交会以 Devin bot 的身份创建。
- GitHub Suggested Changes 遵循 GitHub 的标准行为:任何评审者 (包括 Devin) 都可以在评审评论中留下建议修改。当用户点击“Apply suggestion”时,提交的作者为该用户,与 GitHub 中的行为一致。
- Devin 绝不会在用户未明确发起操作的情况下,代表用户创建提交或评论。
AGENTS.md / 指令文件
**/REVIEW.md**/AGENTS.md**/CLAUDE.md(不区分大小写)**/CONTRIBUTING.md(不区分大小写).cursorrules.windsurfrules.cursor/rules*.rules*.mdc.coderabbit.yaml/.coderabbit.ymlgreptile.json
.agents/、.devin/、.cursor/、.github/) 中的文件在确定作用域时会被视为属于其父目录。例如,src/.agents/REVIEW.md 适用于 src/ 下的文件。
这些文件可以包含编码规范、项目约定或其他指南,从而帮助提供更有针对性的反馈。
自定义 Review 规则
- 前往 Settings > Review
- 在 Review Rules 下输入一个文件 glob 模式 (例如
docs/**/*.md) - 点击 Add
**/REVIEW.md 规则一起显示在列表中。你可以点击其旁边的垃圾桶图标来移除任意自定义规则。
当你的项目中与评审相关的文档位于非标准位置时 (例如架构决策记录、风格指南,或存放在自定义路径中的团队特定约定) ,这会非常有用。
REVIEW.md
REVIEW.md 是专门为 Devin Review 准备的说明文档。将它放在代码仓库中的任意位置,即可自定义 Devin 在你的项目中审查 PR (拉取请求) 的方式。Devin 会在任意目录层级 (**/REVIEW.md) 自动查找 REVIEW.md 文件,因此如有需要,你可以将审查规范限定到特定子目录。
使用 REVIEW.md 来定义与代码审查相关的专项规范,例如:
- 代码库中需要额外严格审查的区域
- 需要留意的常见陷阱或反模式
- 审查者应当强制执行的项目特定约定
- 在审查期间可以安全忽略的文件或目录
- 你项目特有的安全或性能方面的注意事项
REVIEW.md:
