三个编辑器的 skill 都遵循同一套开放标准,这意味着你创建的大部分 skill 可以在它们之间通用。SKILL.md 是 skill 的核心入口,它由 YAML 头(描述触发场景与限制)和 Markdown 正文(具体指令)两部分组成。目录结构也比较类似,都是在特定文件夹下包含一个 SKILL.md 和可选的脚本、参考文档等资源。
具体到每个工具,它们的存放位置和特有功能略有不同:
VS Code:支持放在根目录 .github/skills/,.claude/skills/,.agents/skills/。个人可用/.copilot/skills/。特色是 Chat 自定义编辑器、/skills命令。Trae CN:支持放在 .trae/skills/,或通过 NPX 命令&ZIP 包导入。支持项目级别转化为全局级别、AI 辅助创建。Claude Code:支持放在 .claude/skills/,个人可用~/.claude/skills/。特色是允许调用控制(user-invocable)和 Subagent 执行等等。
子代理(Subagent)是 Claude Code 中一项强大的高级特性。 它允许你将特定类型的任务委派给 运行在独立上下文中的专用 AI 助手,从而实现更好的 上下文隔离 、更精确的行为约束和更高效的任务执行
下面是各工具的实操指南。
1. VS Code 中 Skill 的详细使用教程
VS Code 通过 GitHub Copilot 的聊天界面提供原生支持,允许通过聊天窗口实现发现、创建和管理。 先检查是否启用Skill功能,如下图(设置→skill)
1.1 存放位置
在 VS Code 中,Skill 的存放位置决定了它的作用范围:
- 项目技能
: 位置:项目根目录的 .github/skills/,.claude/skills/或.agents/skills/文件夹下。作用范围:仅对当前项目生效,可通过 Git 与团队共享。 - 个人技能
: 位置:用户主目录下的 ~/.copilot/skills/,~/.claude/skills/或~/.agents/skills/文件夹下。作用范围:对当前电脑上所有项目生效。 - 高级路径配置
:可以在 settings.json中为项目技能配置额外路径。在单体仓库中,还可启用父仓库发现功能。
1.2 创建与编写
直接在 VS Code 的 Chat 面板中操作非常方便。
打开编辑器:在 Chat 面板的右上角,点击 齿轮图标 ⚙️ (Configure Chat) 即可打开“Chat Customizations”编辑器,然后切换到 Skills 选项卡。

新建与填写:选择“New Skill (Workspace)”或“New Skill (User)”,输入技能名后,VS Code 会自动生成带有 YAML 头的
SKILL.md文件供填写。
此外可以利用skill.md文件调用其他文件夹中的内容进行功能的拓展以及调用:如下图
your-project-root/ # 你的项目根目录└── .github/ # 或者 .claude/ 或 .agents/└── skills/ # 技能的总目录└── my-lf-code-review/ # 这是这个技能的专属文件夹(建议英文小写加连字符)├── SKILL.md # (必需) 技能的核心入口文件,文件名必须全大写├── references/ # (可选) 存放参考文档,供AI查阅│ └── lf-style-guide.md├── scripts/ # (可选) 存放可执行脚本,用于完成特定任务│ └── run_lint.sh└── templates/ # (可选) 存放模板文件,定义输出格式└── component-template.cpp
- YAML 头规范
:需包含 name(技能标识)和description(触发条件)。
1.3 使用现成Skill包
在github等网站下载skill项目包zip包,直接将该skill包解压,然后将对应文件夹直接存放到
your-project-root/ # 你的项目根目录└── .github/ # 或者 .claude/ 或 .agents/
1.4 目录结构示例
一个名为 my-lf-code-review 的项目技能,其目录结构可能如下:
.github/ # 或者 .claude/ 或 .agents/└── skills/ # 技能的总目录└── my-lf-code-review/ # 这是这个技能的专属文件夹(建议英文小写加连字符)├── SKILL.md # (必需) 技能的核心入口文件,文件名必须全大写├── references/ # (可选) 存放参考文档,供AI查阅│ └── lf-style-guide.md├── scripts/ # (可选) 存放可执行脚本,用于完成特定任务│ └── run_lint.sh└── templates/ # (可选) 存放模板文件,定义输出格式└── component-template.cpp
1.5 测试与验证
- 验证发现
:在 Copilot Chat 窗口输入 /skills命令,你刚刚创建的 Skill 应该会出现在列表中。如果未出现,请检查文件路径正确且SKILL.md文件名全大写。 - 触发执行
:输入与 description匹配的指令,如 “please review the Vue component code”,Agent 应该会自动激活你创建的 Skill 并执行审查。
2. Trae CN 中 Skill 的详细使用教程
Trae 提供了图形界面操作路径,并内置 AI 辅助创建功能。
2.1 导入与安装
- 方法一:本地文件导入 (项目级与全局级)
- 项目级导入
:将包含 SKILL.md的文件夹手动放入项目根目录的.trae/skills/文件夹下。 - 全局级复用
:在 Trae 中将已安装的项目技能标记为“全局技能”,使其在所有项目中生效。 - 方法二:通过 NPX 命令安装
在 Trae 的内置 AI 对话框中,直接粘贴 npx安装命令并发送。AI 会自动执行安装并询问你的配置意向,如全局/项目安装模式等。- 方法三:Trae 官方导入 (导入 ZIP 包)
将下载的 Skills 文件夹压缩为 .zip 文件。 先科学上网进github找一个需要的skill,然后下载zip文件包;

在 Trae 的技能管理界面,使用导入功能选择该 ZIP 包完成导入。 设置 → 规则与技能 → 技能 → 导入:如图

2.2 由 AI 辅助创建
在 Trae 中,你可以不手动编写 SKILL.md 文件。
在内置 AI 对话框中,清晰地描述你想要的技能,例如:“帮我创建一个用于检查 Python 代码是否符合 PEP8 规范的技能。” Trae 会自动生成一个结构完整、内容详尽的技能包,并提示你保存到相应位置。 - 查询技能包能力
:如果你不了解某个已安装技能包的能力,可以直接让 Trae 的 AI 为你介绍,并询问如何调用触发它。
2.3 验证与激活
- 首次调用
:在对话中,当你的指令匹配到技能的 description时,你会看到相关的调用,表明 Skills 被成功调用。
3. Claude Code 中 Skill 的详细使用教程
Claude Code 的 Skill 体系最为强大和灵活,支持丰富的插件生态。claude code的下载,可以参看以下链接:https://www.runoob.com/claude-code/claude-code-deepseek.html
注意:如果vscode中的claude code通过插件市场无法下载skill等插件,可以通过claude code cli终端进行插件市场下载后,再进行skill插件下载;如下图

3.1 基本使用
- 存放位置
: - 个人技能 (全局)
: ~/.claude/skills/<技能名>/。 - 项目技能
: 项目根目录/.claude/skills/<技能名>/。 - 同名覆盖
:当个人技能与项目技能同名时,项目级会覆盖个人级。 - 创建技能
: 创建技能目录,如 mkdir -p ~/.claude/skills/explain-code。在目录下创建 SKILL.md,如touch ~/.claude/skills/explain-code/SKILL.md。- 调用方式
: - 自动调用
:Claude 根据 description的语义与对话自动匹配触发。 - 手动调用
:通过斜杠命令直接触发,例如 /explain-code。
3.2 通过插件市场安装与管理
Claude Code 拥有强大的插件体系,是最推荐的安装复杂 Skill 的方式。
- 添加市场
:在 Claude Code 对话框输入 /plugin marketplace add <市场的HTTPS地址>来添加你信任的市场。 - 安装插件
:输入 /plugin install <插件名>@<市场名>,Claude Code 会自动完成下载、配置、注册依赖和版本管理等所有步骤。 - 管理命令
:提供了一套完整的生命周期管理命令。 /plugin list:列出所有已安装的插件 /plugin enable/disable <插件名>@<市场名>:启用或禁用某个插件 /plugin uninstall <插件名>@<市场名>:卸载一个插件
3.3 Claude Code 的高级特性
Claude Code 扩展了 Agent Skills 标准,提供了一些独家高级功能。
- 调用控制
:可在 YAML 头中精确控制触发方式。 user-invocable: false:禁止用户手动调用,只有模型能自动触发。 disable-model-invocation: true:禁止模型自动触发,只有用户手动调用时生效。 - Subagent 执行
: 复杂任务可在独立子进程中运行,避免干扰主会话。
3.4 最佳实践与排错指南
- 编写技巧
: description字段是 Claude 决定是否自动调用的唯一依据。这个字段写得越详细、包含的用户可能提及的关键词越多,Claude 就越容易在恰当的时机匹配到正确的 skill。 - 网络问题
:国内用户建议使用 HTTPS 格式的仓库地址,并配置好 Git 代理。如果 git clone因网络问题反复失败,可以直接下载 ZIP 包解压,然后复制到 skills 目录进行本地手动安装。
总结:三者功能对比
| 存放路径 | .github/skills/.claude/skills/, .agents/skills/ 等 | .trae/skills/ | .claude/skills/ |
| 安装方式 | /plugin install 命令安装 | ||
| 创建方式 | |||
| 主要优势 | |||
| 特色功能 | |||
| 社区与生态 | find-skills 工具,中文社区活跃 |
常见问题 (FAQ)
- Skill 未被识别?
检查 SKILL.md文件名是否全部大写,路径和目录名称是否正确。在 VS Code 中,用 /skills命令检查是否在列表中。- Skill 未被自动触发?
检查 SKILL.md的description字段是否与你的提问足够匹配。检查是否设置了 disable-model-invocation: true限制。- Claude Code 插件安装失败?
国内环境大概率是网络问题,检查 Git 代理配置,或改用本地手动安装。
夜雨聆风