Copilot Chat 怎么用?IDE 里随时问 AI 完整教程
Copilot Chat 是 GitHub Copilot 内置对话面板:在 VS Code 里随时问 AI。本文按打开、4 个斜杠命令、上下文喂法、改代码、多文件等场景保姆级走一遍
30 秒了解:Copilot Chat 怎么用
Copilot Chat 是 GitHub Copilot 内置的对话面板:在 VS Code / JetBrains / Visual Studio 里按一个快捷键就能打开,直接跟 AI 聊代码,比开浏览器问 ChatGPT 顺手 10 倍。 关键差别在于:Chat 能自动看到你当前打开的文件、能用 #file #selection 精准喂上下文、有 /fix /tests /explain 等斜杠命令一键触发常见任务。
这篇按打开 → 4 个核心命令 → 上下文喂法 → 多文件编辑保姆级走一遍。
如果你还没开通 Copilot,先看 GitHub Copilot 开通教程 跑通。
准备工作:3 件事
- Copilot 已开通:Free / Pro 都行,Free 档每月有 50 次 Chat 调用、Pro 几乎无限
- VS Code 安装 GitHub Copilot Chat 插件:跟 Copilot 本体分开装,扩展市场搜
GitHub Copilot Chat - 登录 GitHub:用开了 Copilot 的同一个账号
第 1 步:打开 Copilot Chat 面板
3 种打开方式,记住一个就够:
| 方式 | 快捷键 | 适合 |
|---|---|---|
| 侧边面板 | Ctrl / Cmd + Alt + I | 边写代码边聊 |
| 内联 Chat | Cmd + I(Mac)/ Ctrl + I(Win) | 改某段选中代码 |
| Quick Chat | Shift + Cmd + I(Mac)/ Shift + Ctrl + I(Win) | 临时问一句 |
最常用的是 侧边面板——按一下 Chat 面板从右侧滑出,常驻不挡你写代码。
打开后看到底部输入框,旁边有个模型切换菜单(GPT 系列、Claude 系列、Gemini 都能选)。
第 2 步:学 4 个核心斜杠命令
Copilot Chat 的精华是斜杠命令——比纯自然语言提问效率高 3 倍。记 4 个就够日常 80% 的活:
| 命令 | 触发场景 |
|---|---|
/explain | 解释当前选中的代码 |
/fix | 修当前文件的 bug |
/tests | 生成单元测试 |
/doc | 给函数加文档注释 |
/explain 实战
选中一段你不太懂的代码(比如老项目里某个 reduce 大表达式),打开 Chat 输入:
/explain
按 Enter,Copilot 会逐行解释:这段在干嘛、为啥这么写、隐藏的边界情况。
适合:
- 接手老项目读不懂的代码
- review 同事 PR 时快速理解
- 学习开源项目里的高级写法
/fix 实战
跑测试 / 编译报错?光标点到出错的文件,Chat 输入:
/fix
Copilot 自动读当前文件 + 错误信息 + 项目结构,给修复建议(带 diff)。点 Apply 应用。
进阶玩法:把整段报错粘到 Chat 里再加一句「按上面这段报错,找问题、改完确认」,比纯 /fix 更精准。
/tests 实战
光标停在一个函数定义上,Chat 输入:
/tests
Copilot 会:
- 识别函数签名(参数、返回值)
- 看项目里的测试约定(用 Jest / vitest / pytest)
- 生成包含 happy path + 边界 case + 异常处理的完整测试
生成完点 Apply 把测试代码插入测试文件、或新建测试文件。
适合:
- 给老代码补测试覆盖
- 写新函数想偷懒不写测试
- 学习别人项目的测试风格
/doc 实战
选中一个函数定义,Chat 输入:
/doc
Copilot 给函数加 JSDoc / Python docstring / Go doc comment(按你项目的语言)。包括:
- 一句话功能描述
@param每个参数说明@returns返回值说明@throws可能抛的异常@example使用示例
写完直接 Apply 到函数上方。一次性给整个模块补文档特别快。
完整斜杠命令列表
除了上面 4 个,还有几个进阶命令:
/clear清空当前对话,重新开始/new在新文件里写代码(如「/new 给我一个 React 表单组件」)/search在 codebase 里搜代码(按语义,不只是文本搜)/help看所有可用命令
第 3 步:用 # 精准喂上下文
Copilot Chat 的 80% 效果取决于上下文。3 种喂法:
方式 1:默认上下文(最懒)
直接提问,Chat 会自动用「当前打开的文件」和「光标选中的代码」做上下文。适合简单问题,但项目级问题它看不到全貌。
方式 2:用 # 精准引用
输入 # 触发引用菜单:
#file指定某个文件#selection你当前选中的代码#editor当前打开的编辑器#terminalSelection终端里选中的内容(粘报错神器)#codebase整个项目(按语义搜索)
例:
#file:src/components/Button.tsx 这个组件的样式
搬到 #file:src/components/Card.tsx 同样的 hover 效果
这种「双 #file」精准引用,效果比让 Chat 自己猜准 3 倍。
方式 3:贴整段参考代码
把参考代码或文档贴进 Chat 输入框,Chat 会以贴入的内容为「事实标准」执行。适合「严格按某个规范实现」的场景。
第 4 步:让 Copilot Chat 改代码
Chat 不只是回答,还能直接改你的代码。两种姿势:
姿势 1:内联 Chat(改当前文件)
选中要改的代码段,按 Cmd / Ctrl + I,弹一个小输入框:
加上错误处理,捕获 fetch 失败、console.error 后返回空数组
按 Enter,Copilot 在原位置直接改完,旁边显示 diff(红绿对比)让你审。点 Accept 接受、Discard 丢弃。
适合:
- 改单文件单段代码
- 临时改个变量名 / 加个 try-catch
- 不需要打开侧边面板的快速操作
姿势 2:侧边 Chat + Apply(跨文件)
侧边面板里聊天,Chat 给你的代码片段右上角有 Apply in Editor(应用到编辑器)按钮。点一下,Copilot 自动找对应位置插入或替换。
适合:
- 想先讨论方案、确认后再改
- 改多个文件、需要看到所有改动
- 学习别人写法、决定要不要采用
第 5 步:用 Agent 模式跑多文件大活
VS Code 新版 Copilot Chat 支持 Agent 模式——类似 Cursor 的 Composer,能跨文件改写、跑命令、自主迭代。
怎么开 Agent 模式
Chat 面板顶部有个模式切换:Ask / Edit / Agent 三档。
| 模式 | 行为 | 适合 |
|---|---|---|
| Ask | 只回答,不改文件 | 提问、讨论、读代码 |
| Edit | 改你指定的文件 | 中等任务(3-5 文件) |
| Agent | 自主跑、跑命令、跑很久 | 长任务(半小时以上) |
Agent 模式下你可以让它跑:
任务:把当前项目里所有的 fetch 调用统一改成 axios
步骤:
- 先 grep 找出所有 fetch 调用的文件
- 一个一个改,每改完一个停下来给我审 diff
- 改完所有文件后,跑 npm run build 确认没报错
- 跑 npm test 确认现有测试都过
如果中间发现冲突或不确定的地方,停下来问我。
Agent 会按步骤自主跑,过程中你能随时打断或追问。
Copilot Chat 的 5 个高级技巧
技巧 1:粘报错让它自动 debug
跑出错时,整段报错粘到 Chat 里加一句:
按上面报错,定位问题、改好。
改完跑 npm test 确认绿了。
Copilot Chat 会顺着报错栈找到出错文件、改完跑测试验证。比自己 Google 快得多。
技巧 2:用 #terminalSelection 直接喂终端输出
终端里选中一段输出(比如 git status 的结果、构建日志、报错栈),Chat 里输入:
#terminalSelection 这段输出的意思是什么?该怎么处理?
不用复制粘贴,Copilot 直接读你选中的部分。
技巧 3:切模型按任务匹配
Chat 面板底部能选模型:
- GPT-5 / GPT-5 mini:默认选项,速度快
- Claude Sonnet 4.5:代码质量稍高、解释更清晰
- Claude Opus 4.5:跑复杂逻辑、大重构最猛
- Gemini 2.5 Pro:超长上下文,看大项目用
- o3-mini:推理增强,调试复杂 bug 更准
Pro 档建议日常切 Claude Sonnet,跑大活切 Opus,省 token 切 GPT-5 mini。
技巧 4:用 @workspace / @vscode 等 Chat 参与者
打 @ 触发「Chat Participant」(聊天参与者):
@workspace让 Chat 看整个项目@vscode问 VS Code 本身的功能(怎么改设置、装扩展)@terminal帮你写 shell 命令@github跟 GitHub 集成(PR、Issue 操作)
例:@workspace 这个项目用的什么测试框架?测试覆盖率大概多少?
技巧 5:在 Chat 里直接生成新文件
需要新建一个组件 / 接口 / 配置文件?Chat 里直接说:
/new 给我一个 React 表单组件 ContactForm.tsx
- 字段:name、email、message
- 用 react-hook-form + zod 校验
- 提交时调 /api/contact
- 用 Tailwind 写样式
Copilot 会生成完整文件、问你保存到哪、确认后直接创建。比手动 New File 再粘代码快很多。
常见的 4 个坑
| 现象 | 原因 | 解决 |
|---|---|---|
| Chat 看不到我的项目代码 | 没用 #codebase 或 #file | 主动用 # 引用,别让它自己猜 |
| 改完代码没法 undo | 不小心点了 Accept | VS Code Cmd+Z 单文件撤销,或 git reset --hard 全项目撤销 |
| Free 档 Chat 次数总不够 | 月配额 50 次容易满 | 月初再用 / 升 Pro / 偶尔用 Cursor 等替代 |
| 国内网络偶尔超时 | Copilot 走海外服务器 | 配稳定代理;或换 Kimi Code 走国内 |
一个完整实战:让 Copilot Chat 帮你重构老函数
假设你接手一个 Express 项目,路由文件里有一个 100 行的「上帝函数」,啥都干。怎么用 Copilot Chat 优雅重构:
第 1 步:选中那个函数,Chat 输入:
/explain
先帮我详细解释这个函数:
- 主要在干什么
- 内部分几个职责
- 哪些部分可以拆出去成独立函数
- 当前代码有哪些坏味道(duplication / 嵌套过深 / 命名不清等)
只回答分析,不要改代码。
第 2 步:审完分析,决定怎么拆。继续聊:
按你刚才的分析,把这个函数拆成 3 个独立函数:
- validateInput:参数校验
- queryDatabase:数据查询
- formatResponse:格式化响应
主路由函数只串联调用这 3 个。
#selection 改写这段代码。
第 3 步:Copilot 输出重构后的代码,diff 审一遍、Apply。
第 4 步:切到 Edit 模式补测试:
/tests
给上面拆出的 3 个函数各写单元测试。
用项目现有的 vitest 配置。
每个函数至少包含 happy path + 1 个边界 case + 1 个异常 case。
第 5 步:跑测试确认通过、git commit。
整个流程从分析 → 拆分 → 加测试,30 分钟搞完。比自己 1 个人撸 2 小时还容易翻车强多了。
下一步
- 想看 Copilot 开通流程 → GitHub Copilot 开通教程
- 想看 Copilot 是什么 → GitHub Copilot 是什么
- 想看 Cursor 对比 → Cursor vs Copilot 对比
- 想看更猛的 CLI → Claude Code 怎么用
- 想看国产替代 → Kimi Code 是什么
- 想看 AI 编程全景 → AI 写代码完全指南
常见问题
Q:Copilot Chat 跟 Copilot 本体是不是一个东西? A:技术上是两个插件——Copilot 是行内补全、Copilot Chat 是对话面板。但订阅是一个,开通 Copilot 后 Chat 也自动能用。两个插件都要单独装(VS Code 扩展市场分别装)。
Q:Free 档的 50 次 Chat 调用是怎么算的? A:按「请求次数」算,不是按 token。一次 Chat 输入 + 回答 = 1 次,不管你的问题多长。所以 Free 档很容易在重度使用一天就花光月配额。日常重度用建议直接升 Pro。
Q:Chat 输出的代码会跟 GitHub 上的开源代码雷同吗? A:偶尔会。设置里有个 Block suggestions matching public code 选项,开启后 Copilot 会过滤明显匹配公开仓库的输出,降低版权风险。商业项目建议打开。
Q:能让 Copilot Chat 看不在当前 workspace 的文件吗? A:不能。Copilot Chat 的上下文范围是当前打开的 workspace,外面的文件它看不到。如果想跨项目分析,把两个项目合在一个 workspace 打开(VS Code 多根 workspace 功能)。
Q:Agent 模式跑出问题怎么回滚?
A:3 道防线:1) Chat 历史里每个改动都能单独 Reject;2) VS Code Cmd+Z 单文件撤销;3) git reset --hard 整个项目回到 commit 前的状态。所以跑 Agent 前一定 commit 一次。