GitHub 代码扫描 AI Scan 支持 REST API 按组织与仓库开关
GitHub 于 2026 年 11 月 13 日发布更新,为代码扫描中的 AI Scan 增加 repository_scan 设置,并开放组织级与仓库级 REST API 读写。该能力处于公开预览阶段,目标是让团队用脚本和基础设施即代码批量管理仓库扫描开关,而不必逐个组织或仓库手动修改设置。
新增 repository_scan 设置与接口
GitHub 在现有 AI Scan 启用接口上新增 repository_scan 属性,取值为 enabled 或 disabled。可用的端点包括组织级的 GET 与 PATCH /orgs/{org}/code-scanning/ai-scan,以及仓库级的 GET 与 PATCH /repos/{owner}/{repo}/code-scanning/ai-scan。
这一设置与已有的 pr_scan 设置并列,后者控制拉取请求上的 AI Scan。两者可以在同一个请求中一起更新,便于统一调整两类扫描的启用状态。
组织与仓库的继承关系
repository_scan 的生效方式与 pr_scan 一致。组织禁用仓库 AI Scan 后,其下属仓库无法自行启用;组织启用后,仓库继承该设置,并可单独选择退出。
当企业策略不允许 AI Scan 时,请求启用会返回 422 错误。若在同一请求中同时修改 pr_scan 和 repository_scan,而其中任一改动被阻止,整个请求返回 422,两项设置都不会发生变化。
开启不等于自动扫描
原文明确说明,打开仓库 AI Scan 并不会启动一次扫描。拥有写权限的用户仍需按需手动运行扫描,且每次扫描都会消耗 GitHub Code Security AI credits。
这意味着 API 开关只改变可用状态,不改变扫描的触发方式和计费方式,团队在批量启用时仍需考虑额度消耗。
权限与适用范围
组织所有者与安全管理者可以管理组织级设置,仓库管理员可以将单个仓库选择退出。该功能适用于组织拥有的公开仓库,以及启用 GitHub Code Security 或 GitHub Advanced Security 的私有或内部仓库。
企业所有者需要先在 enterprise policy 中允许 AI Scan。GitHub Enterprise Server 不在支持范围内,因此该 API 能力目前仅面向 GitHub 云端相关套餐。
知序观察
观察:这次更新把 AI Scan 的开关从逐项手动配置推进到可脚本化、可纳入基础设施即代码的批量管理,对多仓库组织降低配置成本有实际意义。但原文同时强调开启不等于扫描,且扫描消耗 AI credits,说明治理重点仍在权限继承与额度控制,而非扫描自动化本身。