Skill 技能扩展系统

动手开发 MCP 工具 里我们讲了怎么把工具做成远程服务,但很多时候你的需求没那么重,就是想把本地一些反复要做的操作想固化下来,每次一句话就能执行。这就是 Skill 要解决的问题。

Skills 最早由 Claude Code 推出,把重复的工作流写成一个 Markdown 文件(SKILL.md),AI 按需加载,一个 / 命令就能触发。因为确实好用,现在几乎所有主流 AI 编程工具都跟进了,包括 Codex、Cursor、GitHub Copilot 等,基本成了标配。

这篇文章以 Claude Code 为例讲解 Skill 的创建和使用。如果你用的是其他工具,核心概念完全一样,区别只是 Skill 文件的存放位置:

工具项目级 Skill 目录全局 Skill 目录
Claude Code.claude/skills/~/.claude/skills/
Codex CLI.agents/skills/~/.agents/skills/
Cursor.cursor/skills/~/.cursor/skills/
GitHub Copilot.github/skills/~/.copilot/skills/

各家的结构都差不多:一个文件夹下放一个 SKILL.md,用 YAML 头部声明元信息,Markdown 正文写具体指令。

虽然目录名不同,但 Cursor 和 GitHub Copilot 都内置了对 .claude/skills/ 的兼容,会自动扫描 Claude Code 的 Skill 目录。唯一需要手动处理的是 Codex CLI,加一个软链接就行:

# Codex CLI 不会自动读 .claude/skills,需要链接一下
ln -s ~/.claude/skills ~/.agents/skills

这样只维护 ~/.claude/skills/ 一个目录,所有工具都能用上。

下面直接上手做一个 Skill,就知道怎么用了,最后再讲一下 Skill 的渐进式加载机制,看看它是如何节省上下文的。