Agent Skills技术解析:在Claude Code中定制AI技能提升开发效率
近期,Agent Skills 的热度持续攀升。最初它只是 Claude 中的一个功能模块,但在最近两个月,越来越多开发者发现其强大之处。随后,Codex、Cursor、Opencode 等主流 AI 编程工具 也陆续加入了对 Agent Skills 的支持。
这项技术正在成为连接不同 AI 平台(如 LangChain、OpenAI、Anthropic 的 Opencode)的通用标准。2025年12月18日,Anthropic 正式将 Agent Skills 发布为开放规范(agentskills.io/specification),标志着它正像 MCP(Model Context Protocol)一样,朝着通用、跨平台的方向演进。
Agent Skills 的核心概念:三层提示词架构
简单来说,Agent Skills 是一种带目录的说明书,或者说,是一种渐进式披露提示词的机制。它将传统的长提示词(Prompt)拆解为三个层次:元数据(Metadata)、指令(Instruction)和资源(Resource)。其中,只有元数据层是必定加载到 AI 上下文中的,指令和资源层均为按需加载。
我们可以将其类比为一本书:
- 元数据:相当于书籍的目录,仅包含技能名称和简短描述,用于让 AI 快速了解有哪些技能可用。
- 指令:相当于书籍的正文,包含了执行该技能所需的详细步骤、规则和要求。
- 资源:相当于书籍的附录,包含辅助性的脚本、参考文档、图片等文件。
这种设计最大的优势在于大幅降低了 Token 消耗和提示词管理的复杂度。AI 在使用技能时,首先只读取简短的“目录”(元数据),在判断需要用到某个技能后,才去加载对应的“正文”(指令)和“附录”(资源)。
实战:在 Claude Code 中配置与创建 Skill
由于 Agent Skills 由 Claude Code 率先定义并推广,我们首先在其环境中进行配置。
1. 安装与基础配置
最近 Claude Code 的安装方式有所更新。访问其官网 claude.com/product/claude-code,复制提供的安装命令,例如对于 Windows PowerShell:
irm https://claude.ai/install.ps1 | iex
安装完成后,在终端输入 claude 命令即可启动。如果你拥有 Claude 官网账户,可直接登录使用。若希望接入其他模型(如国产大模型),需要进行额外配置。
接入其他模型(以智谱 GLM 为例):
在用户目录下找到 Claude 配置文件夹:
- Windows:
C:\Users\{用户名}\.claude
- macOS:
~/.claude
在该文件夹内创建或修改 settings.json 文件,内容如下:
{
“env”: {
“ANTHROPIC_AUTH_TOKEN”: “填写你的智谱开放平台API_KEY”,
“ANTHROPIC_BASE_URL”: “https://open.bigmodel.cn/api/anthropic”,
“API_TIMEOUT_MS”: “3000000”,
“CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC”: 1
}
}
同时,在用户目录下的 .claude.json 文件中,确保 hasCompletedOnboarding 字段为 true,以跳过初始登录引导。
2. 创建你的第一个 Skill
在 Claude Code 中,Skills 以特定的目录结构存放。每个 Skill 对应一个独立的文件夹,必须包含一个名为 SKILL.md 的定义文件。
标准目录结构:
项目根目录/
└── .claude/
└── skills/
├── skill-name-1/ # 技能一文件夹
│ ├── SKILL.md # 核心定义文件(元数据+指令)
│ ├── scripts/ # (可选) 可执行脚本
│ ├── references/ # (可选) 参考文档
│ └── assets/ # (可选) 图片等资源
└── skill-name-2/ # 技能二文件夹
└── SKILL.md
让我们创建一个实用的技能:“srt字幕转markdown笔记”。
- 在项目根目录下,依次创建
.claude/skills/字幕转markdown 文件夹。
- 在该文件夹内创建
SKILL.md 文件。
SKILL.md 文件内容示例:
name: srt字幕转markdown笔记
description: 把srt字幕文件转换成markdown笔记
---
你是专业的字幕文本处理助手,任务是将 SRT 字幕完整转换为 Markdown 笔记,并添加标点、段落格式和必要的截图占位符。要求如下:
1. **内容完整保留**:禁止任何删减、总括或者略省,必须逐字保留 SRT 所有文字。
2. **语言规则**:使用中文书写,保留必要的英文专有名词。
3. **段落结构**:
- 仅使用一个层级的段落
- 每个段落标题使用「# 标题」
- 第一段为引言,不使用标题
- 只需要划分2-3个段落
4. **标点与排版**:
- 为每句话添加合适标点
- 适当划分自然段
5. **截图占位符规则(按需插入)**:
- 当某句符合以下任一条件时,在句末添加截图标记:
- 代码讲解
- UI 交互操作
- 包含“这么、这里、这儿”等视觉指代词
- 提及网址/链接/地址(包括 GitHub、API endpoint 等)
- 任何借助视觉材料更易理解的内容
- 形式必须严格为:Screenshot-[hh:mm:ss]
文件顶部由 --- 包裹的部分是元数据(name, description),其下的部分是指令。一个技能的基础定义就此完成。
3. 测试与使用 Skill
- 在项目根目录打开终端,运行
claude 启动 Claude Code。
- 输入
/skills 命令,可以看到已识别的技能列表,例如会显示 “srt字幕转markdown笔记 · ~198 tokens”。
- 将需要转换的
.srt 字幕文件拖入终端或输入其路径。
- Claude Code 会识别文件类型,并询问是否使用 “字幕转markdown” 技能。选择 “Yes”。
- 此时,AI 才会将
SKILL.md 中的指令部分加载到上下文中,并开始按照指令处理文件,最终生成一个格式规整的 Markdown 笔记文件。
技能调用流程解析:
- 扫描与列表:用户提问后,Claude Code 扫描所有
SKILL.md 文件,提取元数据,生成可用技能列表(消耗极少 Token)。
- AI 判断:AI 模型根据问题判断是否需要使用技能,以及使用哪个技能。
- 按需加载:若决定使用技能,Claude Code 加载该技能文件夹下的
SKILL.md 指令内容。
- 执行与响应:AI 结合指令和用户问题,生成最终回答或执行操作。
更多实战案例与进阶用法
案例二:创作灵感助手
我们可以创建另一个技能 “来点选题”,用于在视频创作缺乏灵感时提供选题思路。
其 SKILL.md 的元数据部分可定义为:
name: 来点选题
description: 当用户视频创作选题枯竭的时候,为用户提供选题思路
---
我是视频作者,你是我的“灵感助理”,以下是我往期数据较好的视频主题,请提供更多类似的10-15个灵感。用中文输出。
- 把Gemini3生成的应用,免费部署成自己的网站
- Obsidian邪修用法,免费云同步,AI,手机端,进阶技巧
- 用过上百款编程MCP,只有这15个真正好用
- ...
当用户在 Claude Code 中说“不知道做什么视频了”,AI 会调用此技能,并基于提供的往期主题,生成诸如“DeepSeek R1本地部署实战”、“Cursor vs Cline vs Claude Code横评”等一批新的选题建议。
进阶:利用资源层增强技能能力
技能文件夹下除了 SKILL.md,还可以存放资源文件,这是 Agent Skills 强大之处。标准推荐将资源分类存放:
scripts/:存放可执行的 Python、Shell 等脚本。
references/:存放参考文档、范文。
assets/:存放图片等静态资源。
资源层示例1:为字幕笔记自动截图
在“字幕转markdown”技能中,我们生成的笔记包含了 Screenshot-[00:01:00] 这样的占位符。我们可以通过在 scripts/ 目录下放置一个 Python 脚本,让 AI 在生成笔记后自动调用它,从视频中截取对应时间点的画面并替换占位符。
AI 的指令中可以追加:“后续处理: markdown 生成完毕以后,调用 scripts/ 目录下的截图脚本,对视频进行截图。” AI 会执行该脚本,但脚本代码本身不会进入上下文,极大节省了 Token。
资源层示例2:学习特定写作风格
创建一个“帮我写作”技能,其指令中说明:“如果提供的材料是软件、AI、计算机相关的,需要先阅读 references/ 目录下的范文,学习我的写作风格。” 然后将一篇你的典型文章放入 references/ 文件夹。当 AI 处理相关题材时,会按需读取这篇范文,模仿其风格进行创作,实现个性化输出。
全局技能与社区共享
- 全局技能:将技能文件夹从项目目录的
.claude/skills/ 移动到用户配置目录的 ~/.claude/skills/ 下,该技能就会对所有项目生效。
- 社区技能:GitHub 上有丰富的 Skills 开源项目 可供使用,例如 “Awesome Claude Skills”。只需将看中的技能文件夹下载并放入你的
skills/ 目录即可立即使用。
Agent Skills 与 MCP 的对比与协作
尽管 Skills 和 MCP 都能扩展 AI 能力,但侧重点不同:
| 特性 |
Agent Skills |
MCP (Model Context Protocol) |
| 核心 |
提示词管理(渐进式披露) |
工具调用(标准化接口) |
| Token 消耗 |
较低(按需加载) |
较高(提示词一次性载入) |
| 主体形式 |
Markdown 文件(+ 可选脚本) |
Node.js / Python 服务(Server) |
| 执行可靠性 |
一般(依赖本地环境) |
较高(标准化服务) |
| 开发难度 |
低(编写 Markdown) |
中高(需开发 Server) |
Skills 与 MCP 协同工作流:
在实践中,两者可以优势互补。例如,在“帮我写作”技能中,我们可以在指令末尾添加:
“后续处理:检查我名下是否有 ‘ai-docs’ 仓库,若无,则使用 create repository 这个 MCP 工具创建。然后使用 create or update file 工具将写好的文案上传。”
工作流程如下:
- Skills 负责引导:AI 根据技能指令完成文案写作,并判断需要执行 GitHub 操作。
- MCP 负责执行:AI 调用已配置的 GitHub MCP Server 提供的标准化工具,执行创建仓库、上传文件等具体操作。
- 完美协作:Skills 提供了清晰、可管理的上下文提示,而 MCP 提供了可靠、跨平台的工具执行能力。
总结与展望
Agent Skills 通过其创新的三层(元数据、指令、资源)架构和渐进式披露机制,为管理复杂的 AI 提示词和扩展 AI 能力提供了一种轻量、灵活且高效的方案。它降低了定制化 AI 助手的门槛,使开发者能够轻松创建、分享和复用针对特定场景的技能。
目前,Skills 在提示词管理上占优,而 MCP 在工具调用的稳定性和标准化上更强。未来的理想方向可能是两者优点的融合。对于开发者而言,掌握 Agent Skills 的运用,无疑是当前提升 AI 编程工具 效率、构建个性化智能工作流的重要技能。
参考资料
[1] Agent Skills (Claude Skills) 详细攻略,一篇文章精通, 微信公众号:mp.weixin.qq.com/s/cNEhgtYO-RHorY8nbEKH3A
版权声明:本文由 云栈社区 整理发布,版权归原作者所有。