GitHub Copilot 使用笔记

GitHub Copilot 是 VSCode 自带的 AI Agent 插件,需要登录 GitHub 账号使用,分为免费版和付费版。

关于个人额度,可以在 Github 的 Copilot 菜单里查看

额度面板

支持模型

模型列表

添加第三方模型

通过 Manage Models 选中对应厂商。
可以通过 OpenRouter 来导入免费的模型,需要先到 OpenRouter 注册 API Key,输入后即可使用,也可以使用兼容 OpenAI 接口的三方 API,比如 硅基流动 SiliconFlow


使用帮助信息

切换到 Ask 模式,输入 /help 即可获取帮助命令,可以查看当前有什么可用命令和使用方法。

翻译后的内容,方便查看,注意 @ 和 / 开头都是指令,通常在 Agent 编辑器里, @开头代表查找/文件定位,/ 开头代表执行指令 :

  • 输入 /help 可以获取以下帮助信息

@workspace:询问关于你的工作区的问题

  • /explain:解释当前编辑器中代码的工作原理
  • /tests:为选中的代码生成单元测试
  • /fix:为选中代码中的问题提出修复方案
  • /new:在工作区中创建新文件或项目的脚手架代码
  • /newNotebook:创建一个新的 Jupyter Notebook
  • /setupTests:在项目中设置测试(实验性功能)

@vscode:询问关于 VS Code 的问题

  • /search:生成工作区搜索的查询参数
  • /startDebugging:生成启动配置并在 VS Code 中开始调试(实验性功能)

@terminal:询问如何在终端中执行某些操作

  • /explain:解释终端中的内容

@github:获取基于网页搜索和代码搜索的答案,可以用来阅读 Github 上的源码项目

使用建议
为了获得更好的对话体验,请像与真正的程序员交流一样提问:

  • 展示代码:打开相关文件并选中最重要的代码行
  • 持续优化:通过追问、补充说明、提供错误信息等方式不断完善对话

插件扩展

Marketplace
通过 GitHub Marketplace 可以获取对应的插件进行安装,扩展 Agent 功能,这里需要我们在市场里授权用户安装插件(Github 插件是和用户本体绑定的)。


授权通过后,在 VSCode 中使用 Ctrl + Shift + P 输入 Reload Window 重新加载窗口,即可看到 @docker 指令可以使用。

开发实践

注释 + Tab 生成功能

可以在文件头部写入注释,Agent 会根据注释自动生成对应代码,减少代码书写。

// 帮我生成 xxxx // 等待自动补全 Tab 

Markdown 文档生成

可以通过 Markdown 文档形式说明自己的要求,然后采用 #file:读取MD文档位置 引用文档,让 Agent 自动完成文档内指定的任务。

LLM 模型调用

GitHub Copilot 官方也提供了大模型的调用能力

可以基于 Agent 开发基于 LLM 交互的前后端一体化内容。
通过 Marketplace 可以很方便地获取模型使用的源码,选中 Model 后随便选中一个模型。

点击 Playground,在里面选中 Code 就可以得到对应的调用源码,再根据 Agent 进行转换即可。


使用时需要申请 API Key(GitHub Token)。


通过 Use This Model 访问去创建免费 Token Key,再放到调用代码里使用。


个人体验

后续用 claude 和 cursor 就回不去了,截止我最近一次使用的感受:

  • 整体业务理解程度一般, 单一业务处理能力强,但是最近看更新了不少东西,应该是有改进的
  • 集成在 VSCode 编辑器中,对经常用 VSCode 编辑器开发的人比较友好,免费额度日常开发也够用
  • 插件和 Github 账号绑定存在一定门槛
  • 不用科学就可以支持用 GPT 模型,但是内置模型比较少

相关学习网站

Read more

【Linux网络系列】:JSON+HTTP,用C++手搓一个web计算器服务器!

【Linux网络系列】:JSON+HTTP,用C++手搓一个web计算器服务器!

🔥 本文专栏:Linux网络Linux实践系列 🌸作者主页:努力努力再努力wz 💪 今日博客励志语录:别害怕选错,人生最遗憾的从不是‘选错了’,而是‘我本可以’。每一次推倒重来的勇气,都是在给灵魂贴上更坚韧的勋章。 ★★★ 本文前置知识: 序列化与反序列化 引入 在之前的博客中,我详细介绍了序列化 与反序列化 的概念。对于使用 TCP 协议进行通信的双方,由于 TCP 是面向字节流的,在发送数据之前,我们通常需要定义一种结构化的数据来描述传输内容,并以此作为数据的容器。在 C++ 中,这种结构化数据通常表现为对象或结构体。然而,我们不能直接将结构体内存中对应的字节原样发送到另一端,因为直接传递内存字节会引发字节序 和结构体内存对齐 的问题。不同平台、不同编译器所遵循的内存对齐规则可能不同,这可能导致接收方在解析结构体字段时出现错误。 因此,我们需要借助序列化 。序列化 是指将结构化的数据按照预定的规则转换为连续的字节流。其主要目的是屏蔽平台差异,使得位于不同平台的进程能够以统一的方式解析该字节流。序列化通常分为两种形式:文本序列化 与二进制序列化 。 文

Flutter 三方库 webfeed 的鸿蒙化适配指南 - 掌控 RSS/Atom 内容订阅、XML 语义分发实战、鸿蒙级精密聚合专家

Flutter 三方库 webfeed 的鸿蒙化适配指南 - 掌控 RSS/Atom 内容订阅、XML 语义分发实战、鸿蒙级精密聚合专家

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 webfeed 的鸿蒙化适配指南 - 掌控 RSS/Atom 内容订阅、XML 语义分发实战、鸿蒙级精密聚合专家 在鸿蒙跨平台应用执行高级内容聚合与多维资讯资产指控(如构建一个支持全场景自动发现的鸿蒙阅读器、处理海量 RSS 2.0/Atom 协议的语义认领或是实现一个具备极致指控能力的资产管理快报中控)时,如果依赖繁琐的原始 XML 解析或是不透明的正文提取算法,极易在处理“命名空间(Namespace)冲突导致的字段丢失”、“非标准日期格式的解析崩溃”或“多模式 Feed 协议间的字段映射偏移”时陷入研发逻辑崩溃死循环。如果你追求的是一种完全对齐现代 Web 聚合标准、支持全量语义解析且具备极致指控确定性的方案。今天我们要深度解析的 webfeed——一个专注于解决“分发内容标准化认领”痛点的顶级工具库,正是帮你打造“鸿蒙超感阅读内核”

他到底喜欢我吗?赛博塔罗Java+前端实现,一键解答!

他到底喜欢我吗?赛博塔罗Java+前端实现,一键解答!

个人主页-爱因斯晨 文章专栏-赛博算命 原来我们在已往的赛博算命系列文章中的源码已经传到我的Github仓库中,有兴趣的家人们可以自己运行查看。 Github 源码中的一些不足,还恳请业界大佬们批评指正! 本文章的源码已经打包至资源绑定,仓库中也同步更新。 一、引言 在数字化浪潮席卷全球的当下,传统塔罗牌占卜这一古老智慧也迎来了新的表达形式 ——“赛博塔罗”。本文档旨在深入剖析塔罗牌的核心原理,并详细介绍如何利用 Java 语言实现一个简易的塔罗牌预测程序,展现传统神秘学与现代编程技术的融合。 二、塔罗牌原理 (一)集体潜意识与原型理论 瑞士心理学家卡尔・荣格提出的 “集体潜意识” 理论,为塔罗牌的运作提供了重要的心理学支撑。该理论认为,人类拥有超越个体经验的共同心理结构,其中蕴含着 “原型”—— 即普遍存在的、象征性的模式或形象。 塔罗牌的 22 张大阿尔卡那牌恰好与这些基本原型相对应。例如,“愚人” 代表着天真与新开始的原型,“魔术师” 象征着创造力与潜能的原型,“女祭司” 则体现了智慧与直觉的原型。这些原型是全人类共通的心理元素,这也正是不同文化背景的人都能

聊聊天 AI 自己能干活!影刀 6.0 解锁化学资讯整理新姿势

聊聊天 AI 自己能干活!影刀 6.0 解锁化学资讯整理新姿势

谁懂啊!想从化学专业网页扒取资讯标题和链接,还要按主题分类生成带时间戳的 PDF或HTML,放在以前得敲半天代码、调无数参数,现在和影刀 RPA6.0 聊聊天,电脑直接自己把活干完了,甚至报错都能自动解决,这 AI 自动化也太香了!✨ 作为常年和各类化学资讯打交道的人,日常需要从专业化工网页提取信息、分类整理并归档,重复的操作不仅耗时,还容易因为细节出错。直到试了影刀 RPA6.0 的全新 AI 功能,才发现原来自动化可以这么简单 —— 不用学编程,不用搭复杂流程,只需要用自然语言把需求说清楚,剩下的全交给 AI 就够了。 这次我的需求很明确:访问这个化学资讯网页,抓取页面所有咨询的标题和对应链接,按照我关注的化学主题按相似度自动分类,最后将结果保存到电脑桌面,以当前年月日时分秒命名为 PDF或HTML 文件。原本以为会遇到元素定位失败、分类逻辑混乱、文件命名出错等问题,没想到影刀 6.0 的 AI 能力直接把这些难题全解决了!