Copilot Code Review 从固定 Reviewer 演进为可编程 Runtime,仓库控制面、Setup 供应链、Runner 资源和 MCP 工具同时被纳入审查决策 Copilot Code Review 已成为可编程 Agent Runtime2026-07-17 GitHub Changelog 解析TL;DR场景GitHub 在 2026-07-17 一次性把 Copilot Code Review 的 Instructions、Setup Workflow、Firewall、Runner 与 Cloud Agent 网络策略全部向前推进单看是配置增强组合起来是一套可编程 Agent Runtime。结论Review 结果开始由仓库控制文件、运行时依赖、工具、网络策略和 Runner 共同决定Head Branch 读取 Instructions 让被审对象和审查控制面同源需要独立治理控制文件 Diff。产出一张 Runtime 七层分解、一份最小治理模型含 Owner / Lock / Isolate / Audit 四类门禁、一组控制文件清单、12 条错误速查卡与上线前 10 项工程检查清单。版本矩阵功能 / 控制面状态说明从 Head Branch 读取copilot-instructions.md✅ 已验证2026-07-17 Changelog 明确now reads custom instructions from the head branch从 Head Branch 读取*.instructions.md路径级 Instructions✅ 已验证Changelog 与 og:description 范围覆盖路径级 Instructions从 Head Branch 读取AGENTS.md、Agent Skills✅ 已验证Changelog 显式列出 Agent Skills 和AGENTS.md新增读取REVIEW.md/GEMINI.md/CLAUDE.md⚠️ 待验证用户原文声明支持本次未在 Changelog/og:description 中独立核到需查 GitHub Docs专用copilot-code-review.ymlSetup Workflow✅ 已验证og:description:“custom setup steps”文件名见用户原文与 Changelog 行文缺失时回退到copilot-setup-steps.yml⚠️ 待验证用户原文声明回退本次未独立核到独立段落Code Review 默认启用 Firewall✅ 已验证og:description:“now utilizes a firewall”与官方 Firewall 文档一致Firewall 与 Code Review 工具边界Bash-only✅ 已验证官方 Firewall 文档明确only covers processes launched via the Bash toolMCP Server 不在 Firewall 覆盖范围✅ 已验证官方 Firewall 文档明确不覆盖 MCP ServerSetup Steps 不在 Firewall 覆盖范围✅ 已验证官方 Firewall 文档明确不覆盖 Setup StepsCode Review 与 Cloud Agent 网络策略可独立配置✅ 已验证og:description:“independent runner configurations”自托管 Runner 不支持平台 Firewall⚠️ 待验证用户原文声明本次未在 Changelog 中独立核到独立句组织级 Runner 设置在 Changelog 中被描述为已拆分✅ 已验证og:description 措辞为independent runner configurations用户原文以 Changelog 为依据Agent Skills / MCP Server 支持状态⚠️ Public Preview官方使用文档当前明确Public Preview非 GA当前文档仍写从 Base Branch 读取 Instructions⚠️ 文档冲突Changelog 与文档存在字面冲突本文按 Changelog 行为为准、文档滞后视为待核验当前 Runner 文档仍写组织级配置同时作用于 Code Review 和 Cloud Agent⚠️ 文档冲突同上Changelog 描述为现在拆分editorial_review_required门禁⚠️ 门禁涉及动态产品、API、Preview、安全能力生产前必须按最新一手资料复核文章正文发布边界Agent Runtime 是本文的架构判断不是 GitHub 官方产品命名Head Branch、Firewall、Runner 与 Setup 行为以 2026-07-17 Changelog 为准。入库说明本文来自已审核 Inbox 研究包当前仅是待审核候选母稿。外部状态与优先级未被自动采纳未通过编辑审核前不得生成 Topic、平台版本或发布包。复核门禁editorial_review_required。涉及动态产品、指标、API、Preview、安全能力和厂商数据的结论生产前必须按最新一手资料复核。Copilot Code Review 已成为可编程 Agent Runtime发布边界Agent Runtime 是本文的架构判断不是 GitHub 官方产品命名Head Branch、Firewall、Runner 与 Setup 行为以 2026-07-17 Changelog 为准。入库说明本文来自已审核 Inbox 研究包当前仅是待审核候选母稿。外部状态与优先级未被自动采纳未通过编辑审核前不得生成 Topic、平台版本或发布包。复核门禁editorial_review_required。涉及动态产品、指标、API、Preview、安全能力和厂商数据的结论生产前必须按最新一手资料复核。摘要GitHub 在 2026 年 7 月 17 日把 Copilot Code Review 的多个能力同时向前推进从 Pull Request 的 Head Branch 读取更多 Instructions 文件允许通过专用 Workflow 准备依赖和 Runner默认启用可独立配置的防火墙并拆分组织级 Code Review 与 Cloud Agent Runner 设置。单独看每一项都像配置增强放在一起看它们构成了一个可编程执行环境。真正的变化不是 Reviewer 能读更多文本而是 Review 结果开始由仓库控制文件、运行时依赖、工具、网络策略和 Runner 共同决定。Copilot Code Review 应被当作一项独立 CI Workload 管理而不是聊天功能。本文解决什么问题本文回答四个问题为什么这次更新意味着 Agent Runtime而不只是功能增加Runtime 的控制面、数据面和执行面分别是什么Head Branch Instructions 为什么形成新的信任边界团队应如何建立最小治理框架而不把 Preview 能力写成成熟安全方案。官方更新了什么根据 GitHub Changelog本次变更包括Code Review 从 Head Branch 读取copilot-instructions.md、*.instructions.md、Agent Skills 和AGENTS.md新增读取REVIEW.md、GEMINI.md、CLAUDE.md支持.github/workflows/copilot-code-review.yml用于安装依赖、配置 Runner、准备工具和执行预处理若专用文件不存在可以回退到copilot-setup-steps.ymlCode Review 默认运行在防火墙之后Code Review 与 Cloud Agent 的网络策略可独立配置自托管 Runner 当前不支持平台防火墙组织级 Runner 设置在 Changelog 中被描述为已拆分。这里存在两处必须公开说明的文档冲突。当前 GitHub 使用文档仍写 Code Review 从 Base Branch 读取 Instructions当前 Runner 文档仍写组织级配置同时作用于 Code Review 和 Cloud Agent。由于 7 月 17 日 Changelog 直接描述现在改为Head Branch 和现在拆分本文把 Changelog 视为较新的行为说明但不把文档滞后当作已确认事实。生产团队应以账号实际行为和 GitHub Support 回复为最终依据。从 LLM 调用到 Runtime传统的 AI Code Review 可以简化成Diff Prompt - Model - Comments这种模型里风险主要集中在上下文质量、模型误报和输出审查。现在的执行链更接近IDE / Pull Request UX ↓ Instruction Resolution ↓ Runtime Setup ↓ Runner / Workspace ↓ Skills / MCP / Tools ↓ Network Policy ↓ Reviewer Model ↓ Comments / Logs / Metrics / Audit每一层都有独立的版本、权限和失败模式。1. Instructions 是行为控制面Instructions 不只是额外上下文。它们定义 Reviewer 应关注什么、忽略什么、使用哪些检查清单以及如何解释仓库约定。当系统同时读取AGENTS.md、REVIEW.md、CLAUDE.md、GEMINI.md和路径级 Instructions 时团队必须面对三个问题多份文件冲突时谁优先哪个目录的文件对哪些代码生效谁可以修改这些文件。GitHub 当前公开资料没有给出本文可以稳定引用的完整优先级表。因此文章不能编造一个官方加载顺序。工程上应先把这些文件视为同一类控制资产再通过仓库规范减少重叠。2. Setup 是可执行控制面copilot-code-review.yml允许在 Review 前安装依赖、准备工具和选择 Runner。只要配置能够执行命令它就不再是普通文档而是供应链入口。依赖来源、Action 版本、包管理器锁文件、安装脚本和环境变量都会影响 Reviewer 能看到什么、运行什么。让 Reviewer 跑测试会提高准确性但也把包安装脚本、构建工具和网络访问纳入威胁模型。一个被篡改的依赖安装步骤可能在模型开始审查前就已经执行。3. Runner 是资源与网络边界GitHub 文档说明 Code Review 的 Agentic 能力运行在 GitHub Actions 环境。默认 GitHub-hosted Runner 是临时环境自托管方案目前只正式支持 ARC 管理的 Ubuntu x64 Runner。选择自托管不是简单的性能优化而是把网络、凭据、镜像、工作区销毁和横向移动风险交给组织自己管理。4. Firewall 是部分网络策略GitHub 明确说明防火墙默认限制互联网访问也明确说明其局限只覆盖 Agent 通过 Bash 工具启动的进程不覆盖 MCP Server不覆盖配置的 Setup Steps不覆盖 Actions appliance 外部的进程高级攻击可能绕过。因此正确表述是提供常见场景下的出站限制不是形成完整沙箱。5. Skills 与 MCP 扩大工具面当前 GitHub 使用文档把 Code Review 对 Agent Skills 和 MCP Server 的支持标为 Public Preview。工具提高 Reviewer 的上下文能力也增加新的数据源、认证和网络路径。尤其是 MCP 流量不受该 Agent Firewall 覆盖网络审计不能只检查 Firewall Allowlist。新的核心风险被审对象和审查控制面同源Head Branch 读取 Instructions 的产品价值很明确团队可以在 Feature Branch 验证新规则无需先合并主分支。但它也改变了信任关系。过去的直觉是Base Branch Policy 审查 Head Branch Code新的可能语义是Head Branch Policy 审查 Head Branch Code这不自动等于漏洞。是否可利用取决于 Fork PR、仓库权限、Workflow 读取分支、Secrets 暴露、Ruleset 和 GitHub 内部实现。但从治理角度团队必须假设 PR 可能同时改变业务代码Review 指令Review SkillSetup WorkflowRunner 选择工具配置。这意味着普通 Code Diff 之外还需要Control-plane Diff。一套最小治理模型控制资产清单至少把以下路径列为 Reviewer 控制资产.github/copilot-instructions.md .github/instructions/**/*.instructions.md .github/skills/** .github/workflows/copilot-code-review.yml .github/workflows/copilot-setup-steps.yml AGENTS.md REVIEW.md CLAUDE.md GEMINI.md MCP configuration实际路径需要按仓库结构调整。重点不是文件名完整性而是任何能改变模型规则、工具、依赖、Runner 和网络的资产都应纳入同一控制集合。变更门禁建议建立四级处理变更类型默认处理原因普通业务代码正常触发 AI Review数据面变更Review 文档和路径级 Instructions要求指定 Maintainer 审批改变行为控制面Setup Workflow、Action、Runner要求平台/安全 Owner 审批可执行控制面Firewall、MCP、Secret、组织策略仓库管理员无权单独放行跨仓库安全边界GitHub CODEOWNERS 和 Rulesets 可用于实现审批但不能仅依赖 AI Reviewer 自己判断自己的规则是否被安全修改。控制文件审批必须由独立机制执行。基线与审计为每次 Review 记录pull_request_sha base_sha instruction_files content_hash skill_manifest content_hash setup_workflow_hash runner_type runner_image/version firewall_policy_version mcp_server_config_hash model/provider/version review_started_at review_completed_at output_comment_idsGitHub 当前是否暴露所有字段并不确定。这是建议的审计模型不是官方 API Schema。无法直接获得的字段可先由自建检查 Workflow 记录。可复现性不是同一个 PromptAgent Review 的可复现性至少包含五个维度代码版本指令与 Skill 版本依赖和工具版本Runner/网络环境模型和服务端策略版本。只保存 Prompt 无法解释为什么同一 Diff 在两天后得到不同意见。团队应把 Review 视为带外部依赖的构建任务能够重放输入、识别环境漂移、记录失败和比较输出。企业级策略模板# 这是组织策略示意不是 GitHub 官方配置格式review_control_policy:protected_paths:-.github/copilot-instructions.md-.github/instructions/**-.github/skills/**-.github/workflows/copilot-code-review.yml-AGENTS.md-REVIEW.md-CLAUDE.md-GEMINI.mdapprovals:instructions:[review-governance-maintainers]executable_setup:[platform-security]network_and_mcp:[security-admins]checks:-control-plane-diff-dependency-pin-validation-outbound-policy-validation-instruction-conflict-scanblock_on_unknown_instruction_precedence:true这段 YAML 是 Policy-as-Code 设计示例用于表达责任边界不应直接提交为 GitHub 原生配置。常见误区“默认防火墙已经解决供应链风险”错误。Setup Steps 和 MCP 不在该防火墙的覆盖范围内防火墙本身也被官方描述为非全面方案。“Instructions 只是 Prompt不需要 CODEOWNERS”错误。Instructions 可以改变 Review 关注点和工具使用属于行为控制面。“自托管 Runner 更安全因为在内网”错误。内网连接意味着潜在影响更大。安全取决于隔离、最小权限、临时凭据、网络出口和销毁机制。“PR 被 Copilot Review 就等于通过质量 Gate”错误。GitHub 文档说明 Copilot 留下的是 Comment Review不是 Approve 或 Request Changes不计入必需审批也不会自动阻止合并。工程检查清单枚举所有可能被 Code Review 读取的 Instructions 和 Skills。对控制资产设置独立 CODEOWNERS/Ruleset。将 Setup Workflow 视为可执行供应链代码。固定第三方 Actions 到不可变提交或可信版本策略。验证 Fork PR、外部贡献者和 Secrets 的真实行为。分别审计 Agent Bash、Setup Steps、MCP 的网络路径。自托管 Runner 使用 ARC、临时实例、最小网络和无持久工作区。保存指令、Workflow、Runner、Policy 和模型版本。把文档冲突列为上线前验收项。定期运行 Prompt Injection 和控制文件篡改回归测试。对团队的影响Copilot Code Review 的采购问题已经从是否启用 AI Review变成谁拥有 Reviewer Runtime。平台团队需要提供受控环境安全团队需要定义出站与工具边界仓库 Maintainer 需要维护 Review Policy工程效能团队需要记录采纳率和缺陷结果。没有清晰责任划分时功能越可配置行为越难解释。结论2026 年 7 月 17 日的更新标志着 Copilot Code Review 从固定 Reviewer 向可编程 Runtime 演进。价值是更贴合仓库、更能运行真实验证成本是控制面扩大、供应链入口增加、网络覆盖出现分层。正确落地方式不是关闭所有能力而是把 Reviewer 当作独立 CI Workload保护控制文件、锁定环境、限制网络、保存证据、验证结果。参考资料GitHub Changelog: Copilot code review customization and configurability improvementsGitHub Docs: Using GitHub Copilot code reviewGitHub Docs: Configure the development environmentGitHub Docs: Customizing or disabling the firewall for GitHub CopilotGitHub Docs: Configuring runners for GitHub Copilot code review错误速查卡症状根因定位修复PR 中修改了.github/copilot-instructions.md却只有普通 AI Review 提示控制文件未走独立审批查看 PR 是否触发 CODEOWNERS / Ruleset给控制文件设置独立 Owner 或 Required ReviewersReviewer 关注点突然漂移与既有约定不一致新增 / 修改的 Instructions 路径级文件被 Head Branch 读取对比最近 PR 中.github/instructions/**变更锁定控制文件到 Base Branch 或要求 Maintainer 审批Setup Workflow 安装的依赖版本不可信copilot-code-review.yml把任意包管理器脚本当成可执行入口检查package.json/requirements.txt/ lockfile 锁定固定 Action 到 commit SHA、固定依赖到 lockfile、限制 Setup 网络出口Firewall Allowlist 通过但 MCP 仍能出网Firewall 不覆盖 MCP Server 流量在 MCP Server 配置 / 客户端日志中查看实际目标单独审计 MCP 网络路径使用宿主层 Egress 控制或自建代理Setup Steps 触发的进程能访问生产 SecretFirewall 明确不覆盖 Setup StepsSecrets 默认对 Setup 可见审计 Setup Step 的环境变量与网络出口最小权限 Secret 范围、Setup 步骤幂等且不可变自托管 Runner 部署后 Firewall 突然失效自托管 Runner 当前不支持平台 Firewall检查 Runner 类型是否为 GitHub-hosted改用 GitHub-hosted Runner或自建网络层隔离Code Review 与 Cloud Agent 行为不同步两者的网络策略已经独立配置在组织/仓库设置中分别审计 Code Review 与 Cloud Agent Runner显式区分两个配置面不要复用同一 Runner 设置Review 输出与两天前的结果明显不同Instructions / Setup / Runner / 模型 任一层发生漂移比对控制资产 content_hash、Runner 镜像、模型版本把 Review 当作带外部依赖的构建任务保存完整环境指纹团队以为 AI Review 等于 ApproveCopilot 只输出 Comment Review不计入 Branch Protection查看 PR 是否需要人工 Approve 才能合并单独设置 Branch Protection 的人工审批门槛Instructions 多份文件相互覆盖缺少统一优先级表与冲突扫描在 Setup Workflow 中加入 instruction-conflict-scan收敛入口文件、为路径级 Instructions 设置目录归属第三方 Action 自动升级引用了 Tag 而非 commit SHA检查 Workflow 中的uses: owner/repovN固定到不可变 commit SHA并定期刷新到可信版本升级到 Head Branch Instructions 后 Fork PR 出现异常行为Head Branch 指令可被 PR 自身修改信任关系改变在沙箱仓库上对比 Base/Head Branch 行为关闭 Fork PR 的工作流写入权限、限制 Secrets 暴露、设置控制文件保护规则