一、什么是Agent Skill
2025年10月16日,Anthropic 首次提出 Agent Skill 概念;2025年12月18日,发布 Skill 开放标准。目的是减少长会话中预制提示词在上下文中占用的 token 长度。通过让 Agent 通过输入的语义,匹配到对应可以使用的 Skill。在用户确定使用 Skill 之后,再加载完整的 Skill 内容到上下文中,通过懒加载的形式来实现减少 token 的消耗。
其核心机制是"渐进式披露":
| 阶段 | 说明 |
|---|---|
| 发现阶段 | 启动时只加载所有 Skills 的名称和描述(轻量级) |
| 激活阶段 | 当请求匹配某个 Skill 的描述时,才加载完整内容 |
| 执行阶段 | 按照 Skill 中的指令执行任务 |
类比:这就像图书馆的索引系统——先看目录找到需要的书,然后才打开那本书查看详细内容,最后按书中的方法做事。
业界背景
2026年1月21日,Vercel 推出 Skill 聚合网站 skills.sh,汇集了社区贡献的各类 Skills。
相继的 CodeX/OpenCode 等工具也都支持了这一特性。
二、Skill/MCP/Command/Plugin/SubAgent 的概念与区别
在 Claude Code 生态中,有几个容易混淆的概念,下面用餐厅的类比来解释:
| 概念 | 类比 | 说明 |
|---|---|---|
| Command | 服务员 | 点菜的入口,喊"/红烧肉"去后厨传话 |
| Skill | 厨师的菜谱 | 详细写着怎么做,先焯水,再炒糖色,然后炖 40 分钟 |
| MCP | 外卖平台 | 餐厅自己做不了的菜,从外面叫 |
| SubAgent | 帮厨 | 一个厨师忙不过来,叫几个帮厨同时做不同的菜 |
| Plugin | 预制菜包 | 别人调好的料包,拆开就能用 |
| Hooks | 质检员 | 每道菜出锅前检查一下 |
1. Skill(技能)—— 教 AI 怎么做
Skill 是给 AI 看的操作指南,通常是 Markdown 文件,里面写着具体的步骤、模板或最佳实践。
核心特点:
- 共享主上下文,在当前对话中执行
- 可通过
/skill-name显式调用,或让 AI 根据语义自动触发 - 用于标准化输出、遵循特定规范
2. Command(命令)—— 点菜的入口
Command 是一次性执行的指令,包含用户查询内容,用于执行确定性流程。
与 Skill 的区别:Command 是一次性包含用户查询内容,Skill 是系统提示词的一部分。
3. MCP(Model Context Protocol)—— AI 的"手和脚"
MCP 是一种标准协议,负责连接外部工具(如数据库、API、文件系统等)。它像 AI 的"手和脚",让 AI 能够执行实际操作。
与 Skill 的关系:Skill 负责"大脑"的程序化知识(提供工作流框架),MCP 负责执行能力(连接外部工具)。二者相辅相成。
4. SubAgent(子智能体)—— 独立大脑
SubAgent 是拥有独立大脑和独立记忆的 AI 实例,它有自己的 System Prompt,并且在一个全新的、隔离的上下文窗口中运行。
核心特点:
- 完全隔离的上下文环境
- 用于处理需要大量阅读、长时间探索的任务
- 防止主 Agent 的上下文被无关细节撑爆
- Claude Code 可以自动判断并委派复杂任务
使用场景:Code Reviewer、代码库探索、大规模重构等需要消耗大量 Token 的任务。
5. Plugin(插件)—— 打包分发的方式
Plugin 不是功能的一种,而是让功能能够被分享、被安装、被复制的方式。一个 Plugin 可以同时包含 Skills、Commands、Agents、Hooks、MCP 连接…全部打包在一起,一条命令装好。
使用场景:分享自己的技能集合、安装他人贡献的技能包。
三、如何使用Skill
1. 安装 Claude Code
首先需要安装 Claude Code,有以下几种方式:
方式一:npm 安装(推荐)
# 1. 确保已安装 Node.js(访问 nodejs.org 下载)
# 2. 安装 Claude Code
npm install -g @anthropic-ai/claude-code
# 3. 验证安装
claude --version
2. Skill 的格式要求及元数据
一个标准的 Skill 由 SKILL.md 文件定义,需要在文件头部包含 YAML Frontmatter 元数据:
---
name: skill-name # 技能名称,使用连字符
description: 简短描述 # 关键!用于 AI 语义匹配
version: 1.0.0 # 版本号
author: 作者名 # 可选
tags: [tag1, tag2] # 可选,用于分类
---
# 技能详细指令
这里是技能的具体内容…
核心字段说明:
| 字段 | 必填 | 说明 |
|---|---|---|
| name | 是 | 技能名称,建议使用 kebab-case |
| description | 是 | 简短描述,决定 AI 能否正确触发该技能 |
| version | 否 | 版本号,便于管理更新 |
| tags | 否 | 标签,用于分类和筛选 |
其中 description 字段最为关键,它决定了 AI 能否根据用户的自然语言请求准确匹配到该技能。
3. Skill 存放位置
Skill 支持两个存放位置:
| 级别 | 路径 | 适用范围 |
|---|---|---|
| 用户级 | ~/.claude/skills/ | 所有项目可用 |
| 项目级 | .claude/skills/ | 仅当前项目可用 |
在对应目录下创建以技能名命名的文件夹,放入 SKILL.md 文件即可。技能支持热重载,修改后无需重启会话即可生效。
4. 编写一个简单的 Skill
步骤 1:创建 Skill 目录
mkdir -p ~/.claude/skills/summary-code-line
步骤 2:创建 SKILL.md 文件
---
name: summary-code-line
description: 使用列表来统计文件的代码的改动行数。在统计两个commit之间改动的代码行数时使用。
---
统计代码改动行数时,始终包含:
**统计列表**:使用 markdown 列表对各类文件的修改的代码行数进行呈现
**改动分析**:分析代码改动的行数,本次改动,哪些文件应该应该重视
步骤 3:查看可用技能
方式一:启动 Claude Code 后,执行 /skills 可查看当前所有已安装的 Skill。
方式二:启动 Claude Code 后,直接询问当前有哪些可以使用的Skill
步骤 4:测试使用
给 AI 一个符合 Skill 描述的任务,比如:"帮我统计一下这两个commit之间的代码改动行数"AI 会自动匹配并使用该技能。
5. 让 AI 帮忙编写 Skill
借助 Claude 的 skill-creator Skill,可以帮我写出专业的、符合预期的Skill
npx skills add https://github.com/anthropics/skills --skill skill-creator
原理:
skills是一个可执行的npm包,对外暴露了可执行的js脚步,使用node.js自带的npx命令直接运行脚步,从https://github.com/anthropics/skills仓库下载skill-creatorSkill到本地
skills的目录:C:\Users\your_name.agents\skills
.claude中的skills,也会对应的生成一个快捷方式
使用:
首先直接载入skill-creatorSkill,可以直接以/的方式(类似于command直接使用),/skill-creator
直接告诉 AI 你想要什么技能,让它帮你生成。例如:
"帮我写一个生成 Git 提交信息的 Skill,要求包含 Summary 和 Test Plan 两部分。"
AI 会自动生成符合规范的 SKILL.md 文件。