HoRain 云小助手个人主页⛺️生活的理想就是为了理想的生活!⛳️ 推荐前些天发现了一个超棒的服务器购买网站性价比超高大内存超划算忍不住分享一下给大家。点击跳转到网站。目录⛳️ 推荐准备工作环境要求创建 Skill 目录和文件创建目录结构实例SKILL.md 完整内容文件结构解析YAML 头部Frontmatter正文Markdown Body测试你的 Skill背后的工作过程步骤一发现步骤二激活步骤三执行常见问题排查跨工具使用提示我们将创建一个掷骰子 Skill让 Agent 学会通过终端命令生成随机数。准备工作环境要求安装 VS Code安装 GitHub Copilot 扩展本教程使用 VS Code但 Agent Skills 是开放格式。相同的 Skill 也可以在 Claude Code、OpenCode、OpenAI Codex 等兼容工具中使用。更多 VS Code 内容可以参考VS Code 教程。创建 Skill 目录和文件VS Code 默认在项目的 .agents/skills/ 目录下查找 Skill。首先在你的项目中创建以下目录结构创建目录结构# 在项目根目录执行mkdir -p .agents/skills/roll-dice然后在 .agents/skills/roll-dice/SKILL.md 中创建以下文件实例SKILL.md 完整内容---name: roll-dicedescription: 使用随机数生成器掷骰子。当用户要求掷骰子d6、d20 等或生成随机骰子点数时使用。---# 掷骰子方法使用以下 shell 命令生成 1 到指定面数之间的随机数## macOS / Linuxbashecho $((RANDOM % sides 1))## Windows PowerShellpowershellGet-Random -Minimum 1 -Maximum (sides 1)**用法说明**将 sides 替换为用户指定的骰子面数- d6将 sides 替换为 6- d20将 sides 替换为 20- 其他面数以此类推**输出** 直接返回随机结果数字即可无需额外解释。一个文件、不到 20 行就完成了一个完整的 Skill。文件结构解析让我们逐部分理解这个文件的作用。YAML 头部Frontmatter字段作用说明nameSkill 的唯一标识必须与文件夹名称完全一致使用小写字母和连字符description触发条件描述告诉 Agent 什么时候应该使用这个 Skill这是 Agent 决定是否激活的关键字段正文Markdown Body正文是 Agent 激活 Skill 后实际遵循的指令。这里我们告诉 Agent当用户要求掷骰子时使用操作系统的随机数命令并把骰子面数传入命令中。我们同时提供了 macOS/Linux 和 Windows 两种平台的命令Agent 会根据当前环境自动选择。测试你的 Skill创建好文件后按以下步骤验证用 VS Code 打开你的项目打开 Copilot Chat 面板快捷键 CtrlShiftI 或 CmdShiftI或者点击右上角的按钮在聊天面板底部选择 Agent 模式输入 /skills 命令确认 roll-dice 出现在 Skill 列表中可以看到技能列表有 roll-dice如果在 /skills 列表中看不到 roll-dice请检查文件路径是否正确.agents/skills/roll-dice/SKILL.md注意 SKILL.md 必须大写。确认 Skill 已加载后在聊天中输入Roll a d20Agent 应该会自动激活 roll-dice Skill运行终端命令并返回 1 到 20 之间的随机数。背后的工作过程当你在 Copilot Chat 中使用这个 Skill 时底层经历了三个步骤步骤一发现聊天会话开始时Agent 扫描默认 Skill 目录.agents/skills/找到了 roll-dice。它只读取了 name 和 description知道了这个 Skill 是用来掷骰子的。步骤二激活当你输入 Roll a d20 时Agent 将你的问题与 roll-dice 的 description 进行了匹配。匹配成功后Agent 将完整的 SKILL.md 正文加载到了上下文中。步骤三执行Agent 按照正文中的指令识别出你用的是 macOS或 Linux选择了 bash 命令。它将 d20 对应的 20 替换到命令中执行 echo $((RANDOM % 20 1))然后把结果返回给你。常见问题排查问题可能原因解决方法/skills 列表为空SKILL.md 文件路径不正确确认文件在项目的 .agents/skills/roll-dice/ 目录下Agent 没有运行命令模型工具调用可靠性差异尝试更换模型或更明确地说帮我掷一个 d20命令执行失败Shell 环境差异确认在 macOS/Linux 终端中能正常执行 $RANDOM 命令跨工具使用提示虽然本教程使用 VS Code但 Skill 同样可以用于其他工具工具Skill 存放位置VS Code Copilot.agents/skills/ 或 .github/copilot/Claude Code.claude/skills/ 或 ~/.claude/skills/OpenAI Codex.codex/skills/不同的工具可能使用不同的默认目录但 Skill 本身的格式和文件结构是通用的。❤️❤️❤️本人水平有限如有纰漏欢迎各位大佬评论批评指正如果觉得这篇文对你有帮助的话也请给个点赞、收藏下吧非常感谢! Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧