heydeer
配置审查

自动审查筛选条件

自动审查筛选条件决定 HeyDeer 自动审查哪些 PR。它们不限制你手动发起的审查;参见 PR 评论命令。

筛选条件如何生效

自动审查筛选条件位于工作区设置 → 审查规则的何时审查下,也可以在仓库的审查规则标签页中找到。审查时机为仅手动时无法编辑。

每一行包含一个字段、一个运算符(是以下任意一项、不是以下任意一项或没有标签)和若干值。PR 必须匹配每一行才符合条件。标签和用户名不区分大小写。

字段值
PR 标签标签名称
作者GitHub 用户名,例如 alex 或 dependabot[bot]
作者所属团队你组织中的团队,包括子团队
作者与组织的关系组织成员、外部协作者(有仓库访问权限,但不是组织成员)、其他外部作者
作者账号类型个人、机器人(GitHub App 和机器人账号)
PR 状态是草稿、不是草稿
PR 来源同一仓库、Fork 仓库

作者所属团队和作者与组织的关系仅在组织工作区中可用,并且需要 GitHub App 的组织 Members 权限。如果 HeyDeer 无法验证成员身份,自动审查不会开始。

默认筛选条件

新工作区默认包含三行:PR 状态 → 不是草稿、PR 来源 → 是以下任意一项 → 同一仓库和作者 → 不是以下任意一项 → dependabot[bot]、renovate[bot]、pre-commit-ci[bot]、snyk-io[bot]、snyk-bot,因此 HeyDeer 会跳过草稿、Fork PR 和依赖更新。没有任何行时,所有 PR 都符合条件。

依赖更新大多只改动版本号和锁文件,由测试来检查比审查更合适。如需审查某个依赖更新,在其中评论 @heydeer review 即可。其他机器人(例如编程智能体)创建的 PR 会和其他 PR 一样接受审查。

仓库筛选条件

条件来源行为
沿用工作区筛选条件工作区的各行条件都会生效,你在这里添加的行只能进一步缩小符合条件的 PR 范围。
为此仓库单独设置仓库的行会替代工作区的行,初始内容为工作区条件的副本。可用来放宽筛选条件。

恢复工作区筛选条件会移除仓库自己的行。

常用配置

以下每种配置都假定保留默认的行。

目标行
跳过所有机器人作者账号类型 → 不是以下任意一项 → 机器人
跳过更多机器人在“作者”行中添加用户名,例如 github-actions[bot]
也审查依赖更新删除“作者”行
也审查草稿删除“PR 状态”行
要求特定标签PR 标签 → 是以下任意一项 → ai-review
跳过特定标签PR 标签 → 不是以下任意一项 → skip-review
只审查外部贡献者作者与组织的关系 → 是以下任意一项 → 外部协作者、其他外部作者;删除“PR 来源”行
只审查某一个团队作者所属团队 → 是以下任意一项 → backend