什么是 Agent Skills?

什么是 Agent Skills?

Agent Skills 是 GitHub Copilot 的一项实验性功能(VS Code 1.108+),可以理解为给 Copilot 配备的专属"工具箱"。

你只需要创建一个包含 SKILL.md 文件的文件夹,Copilot 就能在相关任务时自动加载并执行你预设的指令。与全局生效的自定义指令不同,Skills 具有按需加载、模块化、可组合的特点,支持跨 VS Code、CLI 和 GitHub.com 使用。

简单来说:自定义指令管"规矩",Agent Skills 管"能力"。

image

 解析:

SKILL.md包含md格式的指令和元数据。

scripts可选,放入一下可执行的代码

references可选,是文档,详细介绍一些分支任务或者给ai提供一个详细的实例,让ai仿照这个文档生成一些内容。

assets,可选,资源文件夹,这里可以放一些doc或者图片,比如想让ai使用我们的模板或者图片或者文档生成到期望的内容中,这里就是存放这些资源的路径。

 

核心作用

1. 任务自动化

将重复性工作封装成 Skill,一句话触发完整流程。例如输入"审查这段代码",Copilot 自动完成格式化、命名检查、注释生成等操作。

2. 知识沉淀

将团队特有的架构规范、测试策略、部署流程写入 Skill,新成员或 AI 都能直接复用。

3. 跨环境复用

一次配置的 Skill,在 VS Code、Copilot CLI、GitHub.com 的 coding agent 中均可使用。

4. 能力组合

多个 Skill 可协同工作,构建复杂工作流(如"代码检查 + 单元测试 + 部署验证"一站式执行)。


工作原理:三层渐进式加载

Skills 的核心设计是按需加载,确保 Copilot 的上下文窗口不被无关信息占满。

第一层:发现(始终加载)

Copilot 启动时,只读取所有 SKILL.md 文件头部的 name 和 description(YAML frontmatter)。这部分数据极轻量,用于判断哪些技能与当前任务相关。

第二层:指令加载(匹配时加载)

当你提出的任务与某个 Skill 的 description 匹配时,Copilot 才会加载该 Skill 的完整 Markdown 指令主体(SKILL.md body),获取详细的执行步骤。

第三层:资源访问(按需引用)

如果指令中引用了同目录下的辅助文件(如脚本、模板),Copilot 只有在执行到相应步骤时才会读取这些资源。

实际案例:创建一个 Python lint 检查 Skill,Copilot 会在你说"检查代码规范"时才加载并执行 Black/Flake8 流程,日常对话不受影响。


Skills vs 自定义指令 vs Agents

 
特性Agent SkillsCustom InstructionsCustom Agents
核心用途 专业化工作流(测试、调试、部署) 编码规范和通用准则 独立运行的专家角色
内容组成 指令 + 脚本 + 示例 + 资源 纯文本指令 独立上下文 + 工具权限
生效方式 按需加载(匹配 description 时) 全局生效或按文件类型匹配 手动调用或路由分发
可移植性 跨 VS Code、CLI、GitHub.com 仅 VS Code / GitHub.com CLI 为主

选择建议:

  • 用 Custom Instructions:定义命名规范、提交信息格式、框架约定

  • 用 Agent Skills:封装测试流程、调试步骤、部署脚本、代码审查标准

  • 用 Custom Agents:创建安全审计、依赖检查等需要独立权限的专家角色


实际应用案例

案例 1:Python 代码规范检查

创建一个自动执行 Black + Flake8 的 Skill,当你输入"检查代码规范"时,Copilot 自动完成格式化、问题汇总和报告生成。

案例 2:Conventional Commits

创建一个全局 Skill,Copilot 在你说"生成 commit"时,自动分析暂存区改动并按规范生成提交信息。

案例 3:文案格式化

一位编辑创建了清理文章格式的 Skill,输入"clean this article"即可自动将弯引号转直引号、长破折号转双横杠、合并多余空格。


如何开始?

  1. 开启功能:VS Code 设置中搜索 chat.useAgentSkills 并勾选

  2. 创建目录:项目根目录下创建 .github/skills/你的技能名/SKILL.md

  3. 编写 SKILL.md:包含 YAML 头部(namedescription)和 Markdown 指令

  4. 使用技能:在 Copilot Chat 中输入匹配 description 的自然语言,或输入 / 手动选择

进阶技巧:通过软链接实现个人 Skills 跨项目共享,或用 GitHub Actions 实现团队 Skills 自动分发。

你是想为你的 autotc 项目创建第一个 Skill 吗?告诉我你想自动化什么任务,我可以帮你写一个示例。

posted @ 2026-04-17 15:02  苹果芒  阅读(150)  评论(0)    收藏  举报