<!-- title: Copilot早不止补全：八个隐藏开关 -->
<!-- domain: tips-tricks -->

# Copilot 早不止补全：八个海外团队偷用的隐藏开关

> **一句话信息差**：你以为 GitHub Copilot 还是 2021 年那个只会按 Tab 补全下一行的小助手，但它现在已悄悄长成一套和 Cursor 同级别的「配置系统」——Custom Instructions、Agent Skills、Custom Agents、Hooks、Prompt Files、Cloud Agent……海外团队 2026 年早就把这些开关一个个打开了，而国内大多数开发者还停在 `Tab → Tab → Tab`。这篇文章拆 8 个被埋没的开关，每一个都能立刻照抄。

---

## 先看一个让人坐不住的事实

海外一位写 Copilot 教程的开发者直接点名：「90% 的开发者只把 GitHub Copilot 当高级自动补全用。Tab, Tab, Tab。」问题不在于 Copilot 弱，而在于**绝大多数人从来没打开过它的配置目录**。

我抓取了 GitHub 官方文档的《Copilot customization cheat sheet》和一篇 2026 年 5 月、2.7 万字的英文深度指南，把它们交叉比对后发现：Copilot 现在至少有 **7 类配置文件 + 1 套云上自主 Agent**，机制和 Cursor 的 rules/skills/hooks 几乎一一对应，只是名字不同。下面这 8 个开关，是国内技术圈讨论最少、但 ROI 最高的。

---

## 开关一：Next Edit Suggestions（NES）—— 预测性「连锁编辑」

**你以为**：Copilot 只能补当前光标的下一行。

**真实玩法**：NES（Next Edit Suggestions）会预测「你改完这一处，几屏之外的另一处也该跟着改」，然后用 gutter（编辑器边栏）里的方向箭头跳过去提示你。比如你把一个函数参数从 `user_id` 改成 `user_uuid`，它会自动提示所有调用处的同步修改，跨函数、跨文件，不用全局搜索。

**操作步骤**（JetBrains / PyCharm，2026 年新增）：
- `Settings → GitHub Copilot → Completions → Enable Next Edit Suggestions`
- VS Code 同样支持，且带 inline edit preview（接受前预览改动）

**预期效果**：重命名、批量重构这类「牵一发动全身」的操作，从手动找 20 处改成接受 20 次建议，速度差一个数量级。

**适用场景**：重命名变量/函数、改函数签名、批量修类型、统一错误处理写法。

---

## 开关二：# 上下文语法 —— 把编辑器状态直接「喂」进对话

这是被低估得最狠的一个。多数人用 Copilot Chat 只会打字：「这段代码为什么报错？」——但 Copilot 其实有整套 `#` 注入语法，可以把**编辑器的实时状态**塞进上下文：

| 语法 | 注入什么 |
|------|---------|
| `#codebase` | 对整个代码库做语义搜索 |
| `#file:name.py` | 把指定文件加入上下文 |
| `#selection` | 当前选中的代码片段 |
| `#problems` | Problems 面板里所有报错/警告 |
| `#testFailure` | 刚跑挂的测试详情 |
| `#terminalLastCommand` | 上一条终端命令的输出 |

**操作步骤**：在 Copilot Chat 输入框直接打 `#`，会弹出候选；组合使用如 `#testFailure #codebase 帮我修这个失败用例`。

**预期效果**：不用复制粘贴错误堆栈，不用手动 @ 文件。一句话带上 `#problems`，Copilot 直接拿到完整报错链路，修 bug 的来回次数肉眼可见地变少。

**适用场景**：调试报错、修失败测试、问「这个改动会影响哪些地方」。

---

## 开关三：Inline Agent Mode（Shift+Cmd+I）—— 光标处直接召唤 Agent

**你以为**：要用 Agent 模式（让 Copilot 自己读写文件、跑命令）必须切到侧边栏 Chat 面板。

**真实玩法**：2026 年 4 月起，JetBrains 系 IDE（PyCharm/IDEA/WebStorm）进入公开预览的 **Inline Agent Mode**——直接在编辑器光标处召唤 agent，就地改文件、就地跑终端，不离开当前上下文。

**操作步骤**：
- 快捷键：Mac `Shift+Cmd+I`，Windows/Linux `Shift+Ctrl+I`
- 或右键 → `Open Inline Chat`，或点 gutter 图标
- 打开后把 Inline Chat 切到 agent 模式即可

**预期效果**：多步重构（改函数→调调用方→跑测试→修报错）全在光标处闭环完成，不用在侧边栏和编辑器之间反复跳。

**适用场景**：局部重构、就地补测试、边写边验证。企业版需管理员开启 Editor preview features policy。

---

## 开关四：Custom Agents —— 给 Copilot 装「只读安全审计员」人格

多数人不知道 Copilot 可以有**多个独立人格**，每个有各自的指令、工具权限和上下文，从 Chat 下拉框切换。配置文件放在 `.github/agents/AGENT-NAME.md`。

**高价值玩法**：做一个**只读**安全审计 agent——只能读代码、跑扫描器，**禁止改任何文件**：

```markdown
---
name: security-auditor
description: Security audit agent - read-only, no code editing
tools:
  - read_file
  - search_codebase
  - run_terminal      # 只允许跑扫描器/linter
  deny: write_file    # 禁止写文件
---
# Security Auditor
You are a security audit agent. Your role is **analysis and reporting only**.
- 查 OWASP Top 10 漏洞
- 检查敏感数据泄露
- 报告按 CVSS 分级：Critical(9-10)/High(7-8)/Medium(4-6)/Low(1-3)
```

**预期效果**：跑一遍安全审计，它给你一份带优先级的报告，但**绝不可能误改生产代码**——因为工具权限层就拦死了。

**适用场景**：代码评审、安全审计、文档生成（docs-writer agent 无终端权限）。比一个「全能 Copilot」可控得多。

---

## 开关五：Agent Skills —— 按需自动加载的「知识包」

这是直接抄 Cursor 技能格式的能力。在 `.github/skills/<skill-name>/SKILL.md` 放一个带 YAML frontmatter 的文件夹，里面装指令、脚本、资源文件。Copilot 会**判断任务相关性后自动加载**，不用你手动 @。

```markdown
---
name: deploy-staging
description: Staging deployment procedure. Use when the user asks
             about deployment, staging, or release.
---
# Staging Deployment
## 部署步骤
- docker build -t myapp:staging .
- kubectl set image deployment/myapp ... -n staging
- kubectl rollout status deployment/myapp -n staging
```

技能文件夹还能塞辅助脚本（`health-check.sh`、`rollback.sh`）和资源（`schema.sql`）。

**预期效果**：新人问「怎么部署 staging」，Copilot 自动掏出完整 runbook + 脚本，而不是凭空编一套错的。

**适用场景**：部署流程、数据库迁移、Release Notes 起草、CI 失败排查——所有「有标准操作手册但平时记不住」的活。

---

## 开关六：Path-Specific Instructions —— 外科手术式规则（applyTo glob）

很多人知道 `.github/copilot-instructions.md`（全局指令），但不知道还有**按路径生效**的精细规则：`.github/instructions/NAME.instructions.md`，用 `applyTo` glob 限定范围。这相当于 Cursor 的 per-file rules。

```markdown
---
applyTo: "tests/**/*.py"
---
# Rules for Tests
- 用 fixtures 而不是 setUpClass
- 测试命名：test_[什么]_[条件]_[预期结果]
- 一个测试只测一件事
- 外部服务用 pytest-mock 打桩
```

再放一个 `.github/instructions/api-routes.instructions.md`（`applyTo: "app/api/**/*.py"`），让 API 层必须带 `response_model`。

**预期效果**：规则只在相关文件生效，全局 instructions 不会被「测试规范」污染。一个 1000 行的巨型 copilot-instructions.md 拆成多个精准小文件，命中率更高。

**适用场景**：测试规范、API 规范、迁移规范各自独立、互不干扰的多模块项目。

---

## 开关七：Hooks —— failClosed 密钥拦截 + 编辑后自动格式化

**最被低估的治理开关**。Hooks 是在 agent 生命周期固定节点自动执行的 shell 脚本（`.github/hooks/*.json`），和 Cursor 的 hook 机制对应。可用事件：`preToolUse`（工具调用前，可阻断）、`postToolUse`（后）、`sessionStart`、`agentStop` 等。

**杀手级用法 A：写文件前自动扫密钥，命中直接拦死**

```json
{
  "hooks": [
    {
      "event": "preToolUse",
      "tool": "write_file",
      "command": "bash .github/hooks/scan-secrets.sh",
      "failClosed": true
    }
  ]
}
```

`failClosed: true` 意味着：扫描脚本一旦报错（疑似写了 token/密钥），**这个写操作直接被阻断**，不是警告，是拦死。

**杀手级用法 B：每次写完文件自动格式化**

```json
{
  "event": "postToolUse",
  "tool": "write_file",
  "command": "bash .github/hooks/format-file.sh"
}
```

`format-file.sh` 里按后缀分发：`.py` 跑 `ruff format && ruff check --fix`，`.ts` 跑 `npx prettier --write`。

**预期效果**：AI 再也不会把 API key 写进代码、再也不会产出风格不统一的文件。这两件事过去靠人 review，现在靠 hook **确定性拦截**。对合规敏感的团队，这是从「不敢用 AI」到「敢放手用」的分水岭。

**适用场景**：金融/医疗等合规行业、多人协作仓库、CI 前置质量门。

---

## 开关八：两个「反常识」隐藏开关

**8a. copilot-instructions.md 的 4000 字符「天花板」**
官方文档提示：Copilot code review **只读取 `copilot-instructions.md` 的前 4000 个字符**。意味着你精心写的第 4001 字之后的规则，在代码审查时等于不存在——很多人不知道这个隐藏上限，把规范越堆越长却没生效。对策：精简到 1000 行以内，细则下沉到 Path-Specific Instructions（开关六）。

**8b. Cloud Agent 现在会「自我审查」**
GitHub Cloud Agent 是直接住在 GitHub.com 上的异步 agent——你给 Issue 指派 Copilot，它自己建分支、实现、**自我跑一遍 Code Review 迭代**、跑安全扫描（code scanning / secret scanning / 依赖检查），最后开 PR 并把你设为 reviewer。2026 年新增能力：可以先要「实施计划」再编码（`Before you begin, show me a plan`）、Deep Research（不改代码只深度分析）、先在分支上跑给你看 diff 再决定开不开 PR。

触发方式任选：Issue 的 Assignees 下拉框、`@github create a PR implementing issue #123`、CLI 的 `gh copilot suggest --issue 123`，甚至 GitHub Mobile。

**预期效果**：把 Copilot 当「会自我复核的初级同事」用——派任务、回来收 PR，而不是自己盯着它一步步写。

**附赠彩蛋**：JetBrains 2026 新增 `/memory` 斜杠命令，在 Chat 里一敲直接打开 AGENTS.md / CLAUDE.md 配置文件，不用翻设置找半天。

---

## 一张图：Copilot 配置系统该怎么选？

面对 7 类配置文件，很多人无从下手。这张决策图帮你一眼对号入座：

```mermaid
flowchart TD
    Start["我想让 Copilot 听话"] --> Q1{"规则什么时候生效？"}

    Q1 -->|"每次都自动生效"| Auto["自动触发类"]
    Q1 -->|"我手动调用一次"| Manual["手动触发类"]
    Q1 -->|"固定生命周期节点"| Determined["确定性触发类"]

    Auto --> A1["全局规范<br/>.github/copilot-instructions.md<br/>（注意：code review 只读前 4000 字符）"]
    Auto --> A2["某文件夹专属规则<br/>.github/instructions/*.md + applyTo glob"]
    Auto --> A3["按需知识包<br/>.github/skills/NAME/SKILL.md"]
    Auto --> A4["多工具共享<br/>根目录 AGENTS.md<br/>（Copilot+Cursor+Claude 同读）"]

    Manual --> M1["可复用 prompt 模板<br/>.github/prompts/*.prompt.md"]
    Manual --> M2["专家人格 agent<br/>.github/agents/NAME.md<br/>（可限只读权限）"]

    Determined --> D1["Hooks<br/>.github/hooks/*.json<br/>preToolUse 拦密钥 / postToolUse 自动格式化"]
    Determined --> D2["外部工具/MCP<br/>mcp.json（Playwright/数据库/GitHub）"]

    style A1 fill:#fef3c7
    style D1 fill:#fee2e2
    style M2 fill:#dbeafe
```

---

## 信息差总结：你以为的 vs 别人偷用的

| 维度 | 多数人以为的 Copilot | 真实的 Copilot（信息差） |
|------|---------------------|------------------------|
| 补全 | 只补下一行，按 Tab | NES 预测几屏外的连带编辑，多行整函数补全 |
| 对话 | 打字问问题 | `#codebase`/`#problems`/`#testFailure` 把编辑器状态直接注入 |
| Agent | 必须切侧边栏 | Inline Agent（`Shift+Cmd+I`）光标处就地改文件 |
| 规则 | 没法配置/只会一个 instructions | 7 类配置文件 + AGENTS.md 跨工具共享 |
| 人格 | 只有一个通用 Copilot | Custom Agents，可设「只读安全审计员」 |
| 治理 | AI 乱改没法治 | Hooks `failClosed` 拦密钥 + `postToolUse` 自动格式化 |
| 规范上限 | copilot-instructions.md 越长越好 | code review 只读前 4000 字符，超了等于没写 |
| 交付 | 只能补，不会交付 | Cloud Agent：出计划→编码→自我 review→安全扫描→开 PR |

---

## 行动指南：今晚就能照抄的 4 步

1. **先试零成本的两个**：在 Chat 里打 `#` 用 `#problems`/`#testFailure` 修一个真实 bug；按 `Shift+Cmd+I` 体验 Inline Agent 就地重构。今天就有体感。
2. **建一个 `.github/copilot-instructions.md`**：写清技术栈、命名规范、安全红线，**控制在 4000 字符以内**，细则下沉到 `.github/instructions/*.md`（用 `applyTo` glob）。
3. **加一个安全 Hook**：复制开关七的 `preToolUse` + `failClosed` JSON 和扫描脚本，先把「AI 写密钥」这条最危险的口子堵死。
4. **派一个 Issue 给 Cloud Agent**：挑一个边界清晰的小 Issue，指派 Copilot，要求它「先给 plan」，看它自我 review + 安全扫描后开 PR。一次跑通，你就拥有了第一个「AI 同事」。

> **优先级建议**：合规敏感团队 → 先上 Hook（开关七）；个人开发者 → 先吃 NES + `#` 语法（开关一、二）；多工具团队 → 写一份 AGENTS.md（开关四附赠）一劳永逸。

**注意事项**：JetBrains 的 Inline Agent、Auto-Approve、部分 Custom Agents 仍在 preview，企业版需管理员开启对应 policy；GitHub 自 2026 年 6 月起转向按用量计费，免费额度和 Actions 分钟消耗规则会变，落地前以 GitHub 官方 changelog 为准。模型可选范围（如 Claude/Gemini 系列）随计划和地区动态变化，别在文章里钉死版本号，自己到设置里看当下可选列表。

---

## 参考来源

- GitHub Docs – *Copilot customization cheat sheet*（官方 7 类配置机制总表）：https://docs.github.com/en/copilot/reference/customization-cheat-sheet
- VS Code Docs – *Use custom instructions in VS Code*：https://code.visualstudio.com/docs/agent-customization/custom-instructions
- GitHub Blog – *Inline agent mode in preview for JetBrains IDEs*（2026 年 4 月 changelog）：https://github.blog/changelog
- Rafał Sarniak – *GitHub Copilot Full Guide, Configuration and New Features 2026*（2026 年 5 月，2.7 万字深度指南）：https://rafalsarniak.com/en/articles/github-copilot-full-guide-configuration-and-new-features-2026/
- GitHub Docs – *About GitHub Copilot cloud agent*（Coding Agent / 自我审查 / 实施计划）：https://docs.github.com/en/copilot

---
> 本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵**爱卫生**（微信ID: gprshome201101）维护。
> 聚焦5G/6G核心网、3GPP标准、AI工具实战。知识星球「51学通信」提供深度技术答疑和行业洞察。

---

### 完成摘要（What was done）

- **信息采集**：内置 WebSearch / webReader 配额耗尽（2026-07-18 重置），改用 `ducksearch` skill（DuckDuckGo CLI）完成多源采集，覆盖 GitHub 官方文档、2026 年 5 月英文深度指南、官方 changelog 等 3 类来源
- **选题**：聚焦 GitHub Copilot（用户基数最大但 90% 只当补全用，且历史未做过专题），挖掘 8 个被埋没的隐藏开关
- **输出**：完整 Markdown 文章，含 2 个 frontmatter 注释、1 个 Mermaid 决策流程图、信息差对比表、行动指南、5 条可点击参考来源、品牌信息，符合 2000+ 字要求

### 下一步计划（What's next）

- **优先级 1**：按 Round 3（实战案例）方向，可拆解「一个团队用 Copilot Custom Agents + Hooks 把 PR 安全审查自动化」的真实案例
- **优先级 2**：下一轮（Round 4 成本优化）可做「GitHub Copilot 按用量计费后的省钱姿势」——正好承接本文提到的 6 月计费变更
- **备选**：内置联网配额 7 月 18 日恢复后，可补充 Reddit r/github 实测讨论增强观点多样性

### 注意事项

- 内置 WebSearch/webReader 已耗尽，本轮全部依赖 `ducksearch`（DuckDuckGo）；若需更高时效性，建议恢复后复验
- 模型版本、计费细节随 GitHub 更新频繁变动，文中已明确标注「以官方 changelog 为准、别钉死版本号」，避免信息过时

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
