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

大模型算法(二):推荐系统进阶

大模型算法(二):推荐系统进阶

第 4 章 推荐系统进阶 上一章介绍的推荐系统经典链路是推荐效果的基石,但要想进一步提升推荐效果,还需要深入一些具体问题来进行优化。本章将介绍一系列推荐系统进阶内容。推荐系统发展多年,有许多问题可以讨论,但限于篇幅,我们精选出一部分对推荐效果影响较大的因素,包括多样性、List-wise 建模、多种用户行为建模、消偏、图模型、探索与利用、动态权重 / 门控类模型。这些因素中的算法策略,并不是只能生效在推荐链路中的某一阶段,如果实践者能够在系统全链路进行优化,将会获得更大的收益。 4.1 推荐系统的多样性 随着推荐系统的发展,所分发内容与用户的匹配精度不断提高,但也萌发了许多新的挑战,多样性就是其中一个备受关注的方向。简而言之,多样性技术是在保障相关性的前提下,在不同的限定范围(即多样性是作用在什么范围内的对象上)提高推荐内容的丰富度,避免相似内容太过密集或扎堆,从而改善用户体验,促进推荐生态的长期健康发展。 宽泛意义上,多样性的限定范围既可以是用户侧也可以是非用户侧(如内容、作者),限定范围的维度通常是不同大小的时间和空间窗口,不同的限定范围对应不同的优化目标与作用方式。具体

By Ne0inhk
深入剖析:按下 F5 后,浏览器前端究竟发生了什么?

深入剖析:按下 F5 后,浏览器前端究竟发生了什么?

文章目录 * 概述 * 一、关键前提:三种导航方式的本质区别 * 二、核心概念:强缓存 vs 协商缓存 * 1. 强缓存(Strong Caching) * 2. 协商缓存(Revalidation Caching) * 三、F5 刷新全景流程图 * 四、F5 刷新的完整生命周期详解 * 阶段一:主文档(HTML)的缓存验证与获取 * 阶段二:HTML 解析与渲染流水线(Critical Rendering Path) * 阶段三:子资源(CSS/JS/IMG)的缓存处理 * 五、对比总结:F5 与其他操作的本质差异 * 六、给前端开发者的实践建议 * 七、结语 概述 在前端开发中,

By Ne0inhk

Webots R2023b 完整安装配置教程

Webots R2023b 完整安装配置教程 声明:本教程由豆包、ChatGPT等AI工具协助完成。 本教程讲解如何安装 Python3、包管理器 Micromamba、必要依赖包(如 opencv-python),以及 Webots 仿真软件,并完成 Micromamba Python 环境与 MATLAB 地址的配置,适用于 Windows、macOS 双系统。 一、前置说明 1. 适用场景:需要使用 Webots 进行仿真开发,同时依赖 Python 进行脚本编写、OpenCV 进行图像处理,通过 Micromamba 管理 Python 环境,并关联 MATLAB 路径用于联合开发。 2. 版本约定(兼容性最优): * Python:

By Ne0inhk
35道常见的前端vue面试题,零基础入门到精通,收藏这篇就够了

35道常见的前端vue面试题,零基础入门到精通,收藏这篇就够了

来源 | https://segmentfault.com/a/1190000021936876 今天这篇文章给大家分享一些常见的前端vue面试题。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 对于前端来说,尽管css、html、js是主要的基础知识,但是随着技术的不断发展,出现了很多优秀的mv*框架以及小程序框架。因此,对于前端开发者而言,需要对一些前端框架进行熟练掌握。这篇文章我们一起来聊一聊VUE及全家桶的常见面试问题。 1、请讲述下VUE的MVVM的理解? MVVM 是 Model-View-ViewModel的缩写,即将数据模型与数据表现层通过数据驱动进行分离,从而只需要关系数据模型的开发,而不需要考虑页面的表现,具体说来如下: Model代表数据模型:主要用于定义数据和操作的业务逻辑。 View代表页面展示组件(即dom展现形式):负责将数据模型转化成UI 展现出来。 ViewModel为model和view之间的桥梁:监听模型数据的改变和控制视图行为、处理用户交互。通过双向数据绑定把 View 层和 Model 层连接了起来,而View

By Ne0inhk