前言¶
GitHub Copilot 的代码审查(Code Review)功能,从 2024 年陆续开放以来,一直是 PR 流程里「AI 辅助把关」的主要入口。但用过的人都知道一个痛点:审查意见往往偏通用——能指出明显的空指针、命名不规范,却很难按你们团队的内部规范来挑刺,更没法自动对照 Jira 上的需求描述或内部文档里的架构约束。
2026 年 7 月 29 日,GitHub 在 Changelog 中宣布:Copilot 代码审查对 Agent Skills 与 MCP 服务器的支持已全面 GA(Generally Available),面向 Copilot Pro、Pro+、Business 和 Enterprise 全部用户开放。此前这两项能力已在 Public Preview 阶段试水,如今正式落地,意味着团队可以把编码规范、审查清单写进仓库,同时让审查过程只读地拉取 Jira、文档系统等外部上下文——这是平台级 AI 编码工具与企业工作流深度整合的一个重要节点。
本文基于 GitHub 官方 Changelog 与文档,梳理这次 GA 的核心变化,并给出可操作的配置示例。
这次 GA 到底多了什么¶
根据 GitHub Changelog(2026-07-29),本次 GA 包含两大能力块:
1. Agent Skills(代理技能)
Copilot 代码审查可以在审查过程中调用团队自定义的技能。技能以 .github/skills/<技能名>/SKILL.md 的形式存放在仓库中,里面写清楚审查时要遵循的规范、检查项和示例。Copilot 在相关场景下会自动加载这些指令,把「通用审查」变成「按你们家规矩审查」。
2. MCP 服务器连接
MCP(Model Context Protocol)允许 Copilot 从第三方平台拉取上下文——例如 Issue 跟踪器、文档系统、服务目录等。代码审查场景下有一个硬性约束:所有 MCP 工具调用仅限只读(read-only),避免审查过程中误改外部系统数据。
此外还有一点值得注意:
- 若你已在 Copilot Cloud Agent 中配置过 MCP,同一套配置会自动作用于代码审查,无需重复搭建。
- GitHub MCP 与 Playwright MCP 默认开启。
- 新增归因标注:审查评论会标明该条意见是否借助 Agent Skills 或 MCP 上下文生成,便于团队验证技能是否生效。
若你在 Preview 期间已配置过,GA 后无需改动,现有设置继续有效。
Agent Skills:把企业规范写进 SKILL.md¶
Agent Skills 遵循开放的 Agent Skills 规范,Copilot Cloud Agent、代码审查、Copilot CLI、Copilot App 以及 VS Code / JetBrains 的 Agent 模式均可复用同一套技能文件。
目录结构¶
项目级技能放在仓库内,支持以下路径(任选其一):
.github/skills/.claude/skills/.agents/skills/
个人级技能可放在 ~/.copilot/skills 或 ~/.agents/skills,跨项目共享。
每个技能是一个独立子目录,必须包含名为 SKILL.md 的文件。可选地附带 scripts/、references/、assets/ 等子目录,供技能正文引用。
面向代码审查的命名建议¶
GitHub 文档特别说明:若希望 Copilot 代码审查确定会读取某技能,建议将目录命名为审查相关名称,例如 code-review。.github/skills 下已有的其他技能,在审查场景相关时也会被自动选用。
SKILL.md 最小示例¶
以下示例展示如何把团队 API 规范注入审查流程。YAML frontmatter 中的 name 必须与父目录名一致:
---
name: code-review
description: 审查 PR 时检查 REST API 命名、错误码与日志规范是否符合团队标准
---
# 代码审查规范
## 必查项
1. 对外 HTTP 接口路径使用 kebab-case,版本号放在 URL 前缀 `/v1/`。
2. 错误响应必须包含 `code` 与 `message` 字段,禁止直接返回堆栈。
3. 新增 public 方法需有对应单元测试;覆盖率下降超过 2% 需在 PR 描述中说明原因。
## 常见问题
- 禁止在 handler 层直接访问数据库,应通过 service/repository 分层。
- 日志中不得打印 token、密码等敏感字段。
frontmatter 字段要求(摘自官方文档):
| 字段 | 必填 | 说明 |
|---|---|---|
name |
是 | 小写字母、数字、连字符,与目录名一致,最长 64 字符 |
description |
是 | 描述技能用途与触发场景,最长 1024 字符 |
license |
否 | 许可证说明 |
allowed-tools |
否 | 预批准工具列表 |
写作技巧:主文件建议控制在 500 行以内; lengthy 参考材料放到 references/ 目录,在正文中引用即可。
创建步骤¶
- 在仓库根目录创建
.github/skills/code-review/(或其他技能名目录)。 - 在该目录下新建
SKILL.md,填写 frontmatter 与审查指令。 - 提交并合并到默认分支;后续 PR 触发 Copilot 代码审查时,Copilot 会按相关性加载技能。
- 查看审查评论上的归因标记,确认技能已被调用。
也可通过 GitHub CLI 的 gh skill 从社区仓库发现与安装技能,官方合集包括 github/awesome-copilot 等。
MCP:只读拉取 Jira、文档与 GitHub 上下文¶
MCP 让代码审查不再局限于 diff 本身。审查时,Copilot 可以通过已配置的 MCP 服务器查询 Issue、文档、服务元数据等,再把结论写进审查意见。
安全边界:代码审查强制只读¶
GitHub 明确:Copilot 代码审查执行的所有 MCP 工具调用均限制为只读。这与 Cloud Agent 不同——Agent 模式下部分 MCP 工具可能具备写权限,但审查场景下平台做了额外限制,降低「审查改数据」的风险。
以 GitHub 官方 Remote MCP Server 为例,可通过 URL 后缀或 Header 启用只读:
{
"servers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/",
"headers": {
"X-MCP-Readonly": "true",
"X-MCP-Toolsets": "repos,issues,pull_requests,code_security"
}
}
}
}
也可以在 URL 中使用 /readonly 路径变体,例如 https://api.githubcopilot.com/mcp/x/issues/readonly。
官方文档建议:尽量 allowlist 只读工具,因为 Agent 会自主调用 MCP,不会逐步征求人工确认。
配置入口¶
- 进入仓库 Settings → Copilot → MCP servers,添加 MCP 配置 JSON。
- 认证 Token 存放在 Settings → Secrets and variables → Agents。
- 若仅需 Cloud Agent 使用 MCP、不希望代码审查调用,可关闭 Allow Copilot to use MCP tools when reviewing pull requests 开关(默认开启)。
仓库级 MCP 配置由 Cloud Agent 与代码审查共享;Preview 期间配好的 Jira、Confluence 等连接器,GA 后直接生效。
典型使用场景¶
- 对照需求审查:通过 Issue/Jira MCP 读取关联 Ticket 的验收标准,检查 PR 是否遗漏边界条件。
- 架构一致性:从内部文档 MCP 拉取模块依赖规则,标记违反分层约束的改动。
- 关联 PR/Issue:利用默认启用的 GitHub MCP,只读查询同仓库历史 PR 与开放 Issue,给出更完整的上下文建议。
审查完成后,借助 GA 新增的归因标注,你可以区分哪些评论来自 MCP 拉取的外部信息,哪些来自 Agent Skills 注入的规范。
与 Cursor Skills 的异同(开发者视角)¶
如果你已经在 Cursor 或 VS Code 中使用 Agent Skills,概念上非常接近:都是 SKILL.md + 目录结构,教 AI 在特定任务中按既定流程行事。差异主要在于运行环境与触发点:
| 维度 | Copilot 代码审查 | IDE Agent Skills |
|---|---|---|
| 触发时机 | PR 打开/更新时自动审查 | 开发者在 IDE 中对话或 Agent 模式 |
| 技能路径 | .github/skills/ 等(仓库级) |
项目 + 用户目录均可 |
| 外部数据 | MCP(审查场景强制只读) | 取决于 IDE 与 MCP 配置 |
| 输出 | PR 行内评论 + 归因标记 | 聊天/编辑建议 |
对企业而言,Copilot 代码审查 + Skills/MCP 的价值在于:规范跟着仓库走,审查在 PR 关口统一执行,不依赖每位开发者本地是否装了同一套插件。
落地建议¶
- 先从一条规范做起:在
.github/skills/code-review/SKILL.md写入 5–10 条最高频违规项,观察一到两个 Sprint 的误报率再扩充。 - MCP 最小权限:审查场景只开只读 Toolset;Issue 类连接器优先于「全开
*」。 - 利用归因做迭代:GA 后评论带来源标记,定期复盘「技能命中但规则过时」或「该命中未命中」的案例,更新 SKILL.md。
- Preview 用户零迁移:已配技能与 MCP 的仓库无需为 GA 专门改配置。
小结¶
2026 年 7 月 29 日的 GA 公告,把 Copilot 代码审查从「看 diff 的通用助手」推进到「可读规范、可读外部系统的团队审查节点」。Agent Skills 解决「怎么审」——把 .github/skills 里的 SKILL.md 变成可版本化的审查手册;MCP 解决「审什么背景」——在只读前提下接入 Jira、文档与 GitHub 自身上下文。
对正在建设研发效能与代码质量体系的团队来说,这未必替代人工 Review,但确实降低了「规范文档躺在 Confluence、审查时没人对照」的长期顽疾。下一步值得做的,是把现有 Code Review Checklist 迁移成 SKILL.md,并为关键 MCP 连接器补上只读配置与 Token 轮换流程。
参考来源
- Copilot code review: Agent skills and MCP now generally available(GitHub Changelog,2026-07-29)
- About agent skills(GitHub Docs)
- Adding agent skills for GitHub Copilot(GitHub Docs)
- Configuring MCP servers for GitHub Copilot(GitHub Docs)