Anthropic 官方发布:Claude Skills 构建指南(全文译版)
这份指南是 Anthropic 官方发布的 Skill 构建规范,系统讲解了从规划、设计、测试、迭代到发布分享的全流程。尤其值得关注的是第五章的五种设计模式和故障排查部分,都是早期采用者和内部团队的真实经验总结。

Reading System
这份指南是 Anthropic 官方发布的 Skill 构建规范,系统讲解了从规划、设计、测试、迭代到发布分享的全流程。尤其值得关注的是第五章的五种设计模式和故障排查部分,都是早期采用者和内部团队的真实经验总结。

Anthropic 刚刚官方发布了 33 页的 Claude Skills 构建指南,以下为全文中文译版。
技能(Skill)其实就是一套指令——打包成一个简单的文件夹——用来教 Claude 怎么处理特定任务或工作流程。这是你自定义 Claude 最有力的方式之一。
你有没有遇到过这种情况:每次跟 Claude 对话,都要重新解释你的偏好、流程和专业背景?有了技能,你只需要教一次,以后每次都能直接用上。
什么时候用技能最合适? 就是当你有可以重复执行的工作流程时,比如:
技能跟 Claude 的内置功能(比如执行代码、创建文档)搭配起来效果很好。如果你在做 MCP 集成,技能还能帮你把原始的工具访问能力,变成可靠、顺畅的工作流程。
读完这份指南,你会学到:
这份指南适合谁读?
两条阅读路径: 只做独立技能?重点看"基础知识"和"规划与设计"部分。 想在 MCP 上叠加技能?"技能 + MCP"和第五章的设计模式更适合你。
预计投入: 读完这份指南后,配合 skill-creator 工具,通常 15-30 分钟就能做出你第一个能用的技能。
技能就是一个文件夹,里面放着:
| 文件/文件夹 | 是否必须 | 作用 | |---|---|---| | SKILL.md | ✅ 必须 | 带 YAML 前置信息的 Markdown 格式指令 | | scripts/ | 可选 | 可执行代码(Python、Bash 等) | | references/ | 可选 | 按需加载的参考文档 | | assets/ | 可选 | 输出用的模板、字体、图标等 |
1. 渐进式披露(Progressive Disclosure)
技能用三层结构来组织内容:
这种分层设计的好处:既省 token,又能保留足够的专业深度。
2. 可组合性(Composability)
Claude 可以同时加载多个技能。你的技能要能跟其他技能和平共处,别假设自己是唯一被启用的那个。
3. 可移植性(Portability)
在 Claude.ai、Claude Code 和 API 里,技能的工作方式完全一样。写一次,到处能用——前提是运行环境支持技能所需的依赖。
技能其实就是 MCP 的"知识层"——把你已经知道的工作流程和最佳实践固化下来,让 Claude 能够一致地应用它们。
| MCP(连接层) | 技能(知识层) | |---|---| | 把 Claude 连接到你的服务(Notion、Asana、Linear 等) | 教 Claude 怎么有效地使用这些服务 | | 提供实时数据访问和工具调用能力 | 固化工作流程和最佳实践 | | Claude 能做什么 | Claude 应该怎么做 |
没有技能时,用户可能遇到的问题:
有了技能之后:
在写任何代码之前,先想清楚你的技能要解决的 2-3 个具体场景。
问自己这几个问题:
第 1 类:文档和素材创建
适合场景:创建一致的高质量输出,比如文档、演示文稿、应用、设计、代码等。
关键做法:
第 2 类:工作流程自动化
适合场景:多步骤流程,需要一致的执行方式,可能跨多个 MCP 服务器协调。
关键做法:
第 3 类:MCP 增强
适合场景:为 MCP 服务器的工具访问能力加上工作流程引导。
关键做法:
量化指标:
定性指标:
your-skill-name/
├── SKILL.md # 必须——主技能文件
├── scripts/ # 可选——可执行代码
│ ├── process_data.py
│ └── validate.sh
├── references/ # 可选——参考文档
│ ├── api-guide.md
│ └── examples/
└── assets/ # 可选——模板等资源
└── report-template.md最简格式:
---
name: your-skill-name
description: 它干什么。当用户说[具体短语]时使用。
---description 字段怎么写——好的写法:
# 好——具体且可操作
description: 分析 Figma 设计文件并生成开发者交接文档。
当用户上传 .fig 文件,或者问"设计规格"、"组件文档"、
"设计转代码交接"时使用。
# 好——包含触发词
description: 管理 Linear 项目工作流,包括冲刺规划、任务创建和状态追踪。
当用户提到"冲刺"、"Linear 任务"、"项目规划",
或者要求"创建工单"时使用。❌ 不好的写法:
# 太模糊
description: 帮助处理项目。
# 没有触发条件
description: 创建复杂的多页文档系统。
# 太技术化,用户不会这么说
description: 实现具有层次关系的 Project 实体模型。✅ 要具体,要说清楚怎么操作:
运行 `python scripts/validate.py --input {filename}` 来检查数据格式。
如果验证失败,常见原因有:
- 缺少必填字段(把它加到 CSV 里)
- 日期格式不对(要用 YYYY-MM-DD)❌ 别含糊其词:
继续之前请先验证数据。✅ 要包含错误处理:
## 常见问题
### MCP 连接失败
看到 "Connection refused" 时:
1. 确认 MCP 服务器在运行:检查 设置 > 扩展
2. 确认 API 密钥有效
3. 尝试重连:设置 > 扩展 > [你的服务] > 重新连接SKILL.md 要保持聚焦:核心指令放在 SKILL.md,详细文档移到 references/ 里,通过链接引用。
1. 触发测试
应该触发:
- "帮我设置一个新的 ProjectHub 工作区"
- "我需要在 ProjectHub 里创建个项目"
不应该触发:
- "旧金山今天天气怎么样?"
- "帮我写个 Python 脚本"2. 功能测试
验证技能输出是否正确,步骤是否完整,API 调用是否成功。
3. 对比测试
对比有技能 vs. 无技能的关键指标:用户消息数、API 调用失败次数、token 消耗。
专业技巧:先把一个难题跑通,再推广 最高效的做法是:先针对一个最具挑战的任务反复迭代,直到 Claude 成功搞定,再把这个成功方案提炼成技能。这样能充分利用 Claude 的上下文学习能力,比广撒网测试更快得到有效反馈。
触发不足的信号:
→ 解决办法:在 description 里加更多细节和关键词
触发过度的信号:
→ 解决办法:添加负触发词,让描述更具体
执行问题的信号:
→ 解决办法:改进指令,加上错误处理
当前分发方式(2026 年 1 月):
怎么介绍你的技能:
聚焦结果,而非功能:
✅ 好的写法:
"ProjectHub 技能让团队能在几秒钟内建立完整的项目工作区——
包括页面、数据库和模板——而不是花 30 分钟手动配置。"❌ 不好的写法:
"ProjectHub 技能是一个包含 YAML 前置信息和 Markdown 指令
并调用我们 MCP 工具的文件夹。"适合场景: 用户需要按特定顺序执行多个步骤。
关键技术:步骤顺序要明确、步骤间依赖关系要写清楚、每个阶段要有验证、失败时要有回滚指令。
适合场景: 工作流需要跨多个服务(设计导出→资产存储→创建任务→发送通知)。
关键技术:阶段分隔要清晰、MCP 间的数据传递要明确、进下一阶段前要验证、错误处理要集中。
适合场景: 输出质量需要通过多轮迭代来提升。
关键技术:质量标准要明确、迭代改进要有节奏、验证脚本要好用、要知道什么时候停。
进阶技巧:对于关键验证步骤,可以考虑打包一个脚本来做程序化检查,而不是靠自然语言描述。代码的执行是确定的,语言的理解不是。
适合场景: 同一个目标,根据上下文要选不同的工具。
关键技术:决策标准要清晰、要有备用选项、选择理由要透明。
适合场景: 技能在工具访问之外还需要提供专业知识。
关键技术:领域专业知识要嵌入逻辑、行动前要合规检查、记录要完整、治理边界要清晰。
技能不触发:
自查清单:
调试技巧:问 Claude:"你什么时候会用 [技能名] 这个技能?" Claude 会引用 description 里的内容。
技能触发太频繁:
解决方法:
description: 用于 CSV 文件的高级数据分析,适合统计建模、回归、聚类分析。
不要用于简单数据探索(请改用 data-viz 技能)。指令没有被遵守:
常见原因:
上下文太大导致响应变慢或质量下降:
解决方法:
官方资源:
示例技能仓库:
skill-creator 工具:
上传技能前后,用这个清单验证一遍。
开始之前
开发过程中
上传后
---
name: skill-name-in-kebab-case
description: 它做什么以及什么时候用。包含具体的触发短语。
---
# 完整字段
name: skill-name
description: [必填描述]
license: MIT # 可选:开源协议
allowed-tools: "Bash(python:*) Bash(npm:*) WebFetch" # 可选:限制工具访问
compatibility: Requires network access # 可选:运行环境需求
metadata:
author: Company Name
version: 1.0.0
mcp-server: server-name
category: productivity
tags: [project-management, automation]禁止的: