Claude Skills:用 Markdown 插件扩展 AI 能力
Anthropic 官方开源的 Claude Skills 项目,通过极简的 Markdown + YAML 技能定义方式,实现 AI 能力的可插拔扩展。本文深入解析其架构设计、使用方式和工程价值。

作为一个被 Spring Boot、MyBatis 和各种 Java 框架“折磨”多年的后端老码农,看到 Anthropic 这个 skills 项目的第一反应是:“这不就是 AI 版的插件系统吗?”
没错!这个项目本质上是在给 Claude(Anthropic 的大模型)提供一套“技能包”,就像你给你的手机装 App,或者给 VS Code 装插件一样。只不过这里的“App”不是图形界面,而是一堆 Markdown 文件 + 脚本资源,告诉 Claude “当你遇到这种任务时,按这个套路来”。
它到底解决了什么问题?
想象一下,你让 Claude 帮你生成一份 PPT,但你希望它严格遵循公司品牌规范:字体用思源黑体、主色是深蓝、每页必须有 logo。如果没有“技能”,Claude 只能靠猜,或者你每次都要重复写一大堆提示词。
而有了 Skill,你只需提前定义好一个 branding-skill,里面写清楚所有规则。下次你只要说“用 branding skill 生成 PPT”,Claude 就会自动加载这套规则,输出符合要求的内容。
这本质上是一种 上下文封装 + 行为复用 的机制,和我们 Java 里封装 Service 层、写通用工具类是一个思路——避免重复造轮子,提升一致性。
技术架构:极简但巧妙
最让我惊讶的是,这个“技能系统”的核心载体居然只是一个 SKILL.md 文件!结构如下:
markdown
---
name: my-skill-name
description: A clear description of what this skill does and when to use it
---
## My Skill Name
[Add your instructions here that Claude will follow when this skill is active]
## Examples
- Example usage 1
- Example usage 2
## Guidelines
- Guideline 1
- Guideline 2
你看,连数据库都不需要!YAML frontmatter 定义元数据,下面的 Markdown 内容就是“操作手册”。这种设计非常符合 Unix 哲学:简单、文本化、可组合。
当然,复杂技能(比如处理 PDF、Excel)会附带 Python 脚本或资源文件,但入口依然是那个 SKILL.md。整个架构就像乐高积木——每个技能是一个独立模块,Claude 在运行时动态“拼装”它们。
采用三层架构:
- 元数据层:YAML frontmatter 定义技能名称、描述等基本信息
- 指令层:Markdown 正文包含 Claude 执行时遵循的具体规则
- 执行层:可选的 Python 脚本或资源文件,处理复杂逻辑
如何使用?三种方式任你选
1. 在 Claude Code 中作为插件安装
如果你用的是 Anthropic 官方的 Claude Code(类似 Copilot 的 IDE 插件),可以直接添加这个仓库作为插件市场:
bash
## 添加技能市场
/plugin marketplace add anthropics/skills
## 安装具体的文档处理技能包
/plugin install document-skills@anthropic-agent-skills
之后你就可以直接对 Claude 说:“用 PDF skill 提取 report.pdf 里的表单字段”,它就知道该调哪个技能了。
2. 在 Claude.ai 网页版中使用
官方已经把示例技能内置到付费版 Claude.ai 中了,你不需要手动安装,直接在聊天时提需求就行,比如:“用 PPTX skill 创建一个包含三页的演示文稿”。
3. 通过 API 集成到自己的应用
这才是我们开发者最关心的部分!你可以通过 Claude API 上传自定义技能,或者使用 Anthropic 提供的预构建技能。
python
## 具体 API 调用示例需参考 Anthropic 官方文档
## https://docs.claude.com/en/api/skills-guide
## 通常涉及创建技能、上传 SKILL.md、关联到对话上下文等步骤
创建自己的技能
要创建一个基础技能,你只需要编写一个符合规范的 SKILL.md 文件:
markdown
---
name: api-doc-skill
description: 为 RESTful API 生成标准化的接口文档,包含请求/响应示例、错误码说明等
---
## API Documentation Skill
当用户要求生成 API 文档时,请遵循以下格式:
1. 接口名称和描述
2. 请求方法和路径
3. 请求参数(Query/Body/Header)
4. 响应示例(成功和失败场景)
5. 错误码说明
## Examples
- 为用户管理系统的创建用户接口生成文档
- 为订单查询接口生成包含分页参数的文档
## Guidelines
- 使用标准的 OpenAPI 风格描述
- 必须包含至少一个成功响应示例
- 错误码必须包含 400、401、404、500 等常见状态码
性能与生产适用性
README 里明确说了:“这些技能仅用于演示和教育目的”。这意味着:
- 示例技能可能不稳定,不适合直接用于关键业务
- 但底层机制(Skill 加载、执行)是生产级的,因为 Anthropic 自己就在用(比如
skills/docx就是 Claude 文档功能的底层实现)
所以,你可以放心基于这个模式开发自己的技能,但别直接 copy 示例代码到生产环境——先测试!
我的个人看法
作为 Java 老兵,我一开始觉得“就这?一个 Markdown 文件也算技术?”但转念一想——这恰恰是高手的设计!
- 低耦合:技能和 Claude 核心完全解耦
- 易维护:改需求?改 Markdown 就行,不用动代码
- 可移植:理论上这套 Skill 标准未来可以跨模型使用(官网提到 agentskills.io 是开放标准)
如果让我在公司内部推广 AI 辅助开发,我肯定会基于这个模式搞一套“内部技能库”:比如 code-review-skill、api-doc-skill、log-analyze-skill……
唯一的槽点是:目前技能执行依赖 Anthropic 的后端,你无法完全掌控执行环境。如果你需要 100% 数据私有化,可能得等开源版本或自建 MCP(Model Context Protocol)服务器。
值得深入学习吗?
绝对值得!即使你不用 Claude,理解“Agent Skill”这种模式对未来 AI 工程化也至关重要。它代表了一种新范式:AI 能力 = 基础模型 + 可插拔技能。
就像当年我们从单体架构走向微服务,未来 AI 应用也会从“单一大模型”走向“基础模型 + 专业技能插件”。早点掌握这个思维,你就站在了浪潮前面。