VS Code Copilot 完整使用教程(含图解)

VS Code Copilot 完整使用教程(含图解)

一、GitHub Copilot 概述

GitHub Copilot 是一款集成在 Visual Studio Code 中的 AI 驱动编码助手,它基于公共代码仓库训练而成,能够支持大多数编程语言和框架。通过自然语言提示和现有代码上下文,Copilot 可提供实时代码建议解释说明自动化实现,显著提升开发效率。

核心功能亮点

  • 智能代码补全:输入时提供单行到整函数级别的实时建议,支持多种编程语言
  • 自主编码模式(Agent Mode):根据自然语言指令,自动规划并执行复杂开发任务,跨文件协调修改
  • 自然语言交互:通过聊天界面与代码库对话,提问、解释代码或指定修改需求
  • 多文件批量修改:单个指令即可应用更改到项目中多个文件,AI 会分析项目结构并进行协调修改
  • 模型灵活切换:可根据速度、推理能力或特定任务需求切换不同 AI 模型,支持接入外部模型

二、安装与设置步骤

获取访问权限

不同用户类型需通过以下方式获取 Copilot 访问权限:

用户类型访问方式说明
个人用户注册 Copilot Free 免费计划(每月有限制)或付费订阅(无限使用),新用户可享受 30 天免费试用
组织/企业成员通过组织管理员分配的订阅访问,或访问 GitHub 设置页面 申请组织提供的 Copilot 权限

详细安装流程

活动栏 Accounts 菜单 选择 Sign in with GitHub to use GitHub Copilot

Accounts menu in VS Code, showing the option to sign in with GitHub to use GitHub Copilot.

Copilot 状态栏菜单选择 Sign in to use Copilot

Sign in to use Copilot from the Copilot status menu.

切换账号(如需)
若需使用其他账号,通过活动栏的 Accounts 菜单 登出当前账号

Accounts menu in VS Code, showing the option to sign out of the current GitHub account.

重新登录方式:

登录 GitHub 账号
选择 Sign in 登录账号(若未登录),无订阅用户将自动注册 Free 计划

Sign in to your GitHub account or use Copilot if you're already signed in.

启动设置向导
悬停状态栏中的 Copilot 图标,选择 Set up Copilot

Hover over the Copilot icon in the Status Bar and select Set up Copilot.

高级设置选项

工作区禁用:在扩展视图(⇧⌘X)中找到 GitHub Copilot,选择 禁用(工作区) 并重启扩展

Screenshot that shows the GitHub Copilot extension in the Extensions view, with the option to disable it for the workspace.

隐藏 AI 功能:通过命令面板(⇧⌘P)运行 Chat: Hide AI Features 完全隐藏 Copilot 功能

Screenshot that shows the Copilot menu in the VS Code title bar, with the option to hide AI features.

三、快速入门:构建任务管理应用

通过实战项目学习 Copilot 核心功能,本教程将创建一个包含添加、删除和标记任务功能的响应式网页应用。

前提条件

  • 已安装 VS Code
  • 已完成 Copilot 访问设置(参考上文)

Step 1: 体验智能代码补全

  1. 创建项目文件夹并在 VS Code 中打开,新建 index.html 文件
  2. Tab 接受建议,完成基础 HTML 结构

如需切换多个建议,可悬停幽灵文本查看导航控件,或使用 ⌥](下一个)和 ⌥[(上一个)快捷键循环选择

Screenshot showing inline suggestion navigation controls.

<body> 标签内继续输入:

<divclass="container"><h1>My Task Manager</h1><formid="task-form">

输入 <!DOCTYPE html>,Copilot 会自动建议完整 HTML 结构(灰色"幽灵文本")

Screenshot showing Copilot suggesting HTML structure completion.

Step 2: 代理模式(Agent Mode)构建完整功能

代理模式能将自然语言需求转化为跨文件的完整实现:

  1. 打开聊天视图(快捷键 ⌃⌘I 或点击活动栏 Copilot 图标)
  2. 观察 Copilot 自动执行以下操作:
    • 更新 index.html 添加任务管理器界面
    • 创建 CSS 文件实现现代响应式样式
    • 生成 JavaScript 文件处理交互功能
  3. 完成后点击 Keep 接受所有更改,在浏览器中打开 index.html 即可看到运行效果

输入以下指令并回车:

创建一个完整的任务管理器网页应用,支持添加、删除任务和标记完成状态。包含现代 CSS 样式,确保响应式设计。使用语义化 HTML 并保证可访问性。将标记、样式和脚本分离到各自文件。 

在聊天模式下拉菜单中选择 Agent

Screenshot showing the agent mode selection in Chat view.

Step 3: 内联聊天(Inline Chat)精确调整代码

内联聊天适用于对特定代码块进行精准修改:

  1. 打开生成的 JavaScript 文件,找到添加任务的代码块
  2. 点击 Accept 应用更改

内联聊天将专注于选中代码块进行针对性改进

Screenshot showing inline chat adding validation to selected function.

输入以下指令:

添加输入验证以防止添加空任务,并去除任务文本中的空格 

选中代码块后按 ⌘I 打开编辑器内联聊天

Screenshot showing inline chat starting for selected code block.

Step 4: 自定义 AI 体验

创建项目专属指令
  1. 在项目根目录创建 .github 文件夹,新建 copilot-instructions.md 文件

添加编码规范(示例):

# 项目通用编码指南 ## 代码风格 - 使用语义化 HTML5 元素(header, main, section 等) - 优先使用现代 JavaScript (ES6+) 特性 ## 命名规范 - 组件名、接口和类型别名使用 PascalCase - 变量、函数和方法使用 camelCase - 私有类成员以下划线 _ 为前缀 
创建自定义聊天模式
  1. 命令面板运行 Chat: New Mode File,选择保存位置为 .github/chatmodes

在聊天视图的模式下拉菜单中可选择此自定义模式

Screenshot showing the Code Reviewer custom mode in the chat mode dropdown.

命名为 “Code Reviewer”,替换内容为:

--- description: '审查代码质量和最佳实践合规性' tools: ['codebase', 'usages', 'vscodeAPI', 'problems'] --- # 代码审查模式 你是一名资深开发者,负责审查代码质量、最佳实践和项目标准合规性,不直接提供代码修改。 ## 分析重点 - 代码质量、结构和最佳实践 - 潜在 bug、安全问题和性能问题 - 可访问性和用户体验考量 

Step 5: 智能操作(Smart Actions)集成工作流

智能操作将 AI 功能无缝集成到 VS Code 界面,无需切换到聊天窗口:

  1. 打开源代码管理视图(快捷键 ⌃⇧G
  2. 初始化仓库并暂存所有更改
  3. 满意则直接提交,或再次点击图标生成替代方案

点击提交框旁的 ** sparkle 图标**,Copilot 将基于暂存更改生成符合规范的提交信息

Screenshot showing generated commit message in Source Control view.

四、高级功能与个性化配置

多模型切换与管理

  • 在聊天视图中通过模型下拉菜单选择不同 AI 模型
  • 支持连接外部模型提供商,需在设置中配置 API 密钥

工作区特定配置

  • 禁用特定语言:在设置中搜索 copilot.languageFilter 排除不需要的语言
  • 自定义快捷键:通过 文件 > 首选项 > 键盘快捷方式 配置 Copilot 相关操作的快捷键

常见问题解决

  • 网络问题:确保 VS Code 可访问 https://api.github.comhttps://copilot-proxy.githubusercontent.com
  • 性能优化:在大型项目中可通过设置 copilot.suggestionsPerRequest 减少建议数量
  • 隐私设置:通过 telemetry.telemetryLevel 设置为 off 禁用遥测数据收集

五、总结与后续学习

通过本教程,你已掌握:

  • Copilot 核心功能:代码补全、代理模式、内联聊天和智能操作
  • 项目实战:从零构建响应式任务管理应用
  • 个性化配置:自定义指令和专用聊天模式

进阶学习路径

  1. 探索 MCP(Model Context Protocol)服务器扩展 AI 能力
  2. 创建更多专用聊天模式(如调试专家、文档生成器)
  3. 学习 Copilot CLI 工具集成终端工作流
提示:使用 # 符号在聊天中引用特定文件(如 #index.html)或使用 #codebase 引用整个项目,可提供更精准的上下文建议。

Read more

【前端】前端面试题

【前端】前端面试题

前端面试题 闭包 1. 定义: 闭包(Closure) 是指一个函数能够访问并记住其外部作用域中的变量,即使外部函数已经执行完毕。闭包由两部分组成: * 一个函数(通常是内部函数)。 * 该函数被创建时所在的作用域(即外部函数的变量环境) functionouter(){let count =0;// 外部函数的变量functioninner(){ count++;// 内部函数访问外部变量 console.log(count);}return inner;}const counter =outer();counter();// 输出 1counter();// 输出 2 2. 闭包的核心原理 * 作用域链:函数在定义时,会记住自己的词法环境(即外部作用域)。当内部函数访问变量时,会沿着作用域链向上查找。 * 变量持久化:闭包使得外部函数的变量不会被垃圾回收,因为内部函数仍持有对它们的引用 3. 闭包的常见用途 3.1 私有变量封装 通过闭包隐藏内部变量,

【技术干货】用 Claude 4.6 直接“写”出可上线的前端 UI:从画布工具到代码工作流的升级思路

【技术干货】用 Claude 4.6 直接“写”出可上线的前端 UI:从画布工具到代码工作流的升级思路

摘要 本文从 Google Stitch 热度切入,对比“AI 画布式 UI 生成”与“代码内 UI 生成”两种路径,系统拆解如何用 Claude 4.6 + 前端设计规则,在真实代码库中迭代出可上线的 UI。附完整 Python API 调用示例与提示词模板,并结合多模型平台薛定猫 AI 的接入方式,帮助前端/全栈开发者把 AI UI 生成直接融入开发流水线。 一、背景:从“好看截图”到“可上线 UI” 当前 AI UI 方向大致两类路径: 1. 画布式设计工具 代表:Google Stitch

别再用 Electron 了!教你用 WebView2 实现 3MB 极致轻量化 Web 打包方案(附神器)

别再用 Electron 了!教你用 WebView2 实现 3MB 极致轻量化 Web 打包方案(附神器)

文章摘要:         你还在忍受 Electron 打包后动辄 100MB+ 的体积吗?你还在为本地 HTML 跨域(CORS)、源码保护、机器码授权而头秃吗?本文将带你体验微软新一代 WebView2 技术,并分享一款支持实时预览、全全局拖拽交互的打包神器。3MB 体积,1.5GB 大文件秒开,彻底解放前端生产力! 😱 为什么 2026 年了,我们还要逃离 Electron? 做前端桌面化开发,Electron 确实是老大哥,但它的缺点和优点一样明显: * 太胖了: 一个最简单的 Hello World,打包出来都要 150MB 起步。 * 太吃内存: 每个窗口都是一个 Chrome 进程,老爷机直接卡死。 * 开发繁琐: 想要实现“老板键”、“机器码授权”、“关机重启”,需要写大量的

基于.Net的Web API 控制器及方法相关注解属性

文章目录 * 1. 路由与 HTTP 方法 (`Microsoft.AspNetCore.Mvc` 命名空间) * 2. 参数绑定源 (`Microsoft.AspNetCore.Mvc` 命名空间) * 3. 响应类型与格式 (`Microsoft.AspNetCore.Mvc` 命名空间) * 4. 授权与认证 (`Microsoft.AspNetCore.Authorization` 命名空间) * 5. Swagger/OpenAPI 文档增强 (`Swashbuckle.AspNetCore.Annotations` 或 `Microsoft.AspNetCore.Mvc`) 这些属性主要用于定义 API 的路由、HTTP 方法、参数绑定、响应类型、授权、Swagger 文档等,通常位于控制器类或 Action