在前面的文章中,我详细介绍了 Claude Skills 的基础概念、与 MCP 和 SubAgent 的区别,以及官方内置 Skills 在网页端和终端的使用方法。
这次我想分享一个更进阶的话题——如何自定义创建 Skills。

自定义 Skills 的价值在于:它让通用 AI 能够适配特定工作流。我在实践中发现,合理设计的 Skill 可以显著降低重复提示词编写的成本。
接下来,我会从三个维度展开:手动创建、借助 Skill-Creator 创建、以及关键注意事项。
一、手动创建 Skills 的完整流程
1. 理解 Skills 的目录结构
Skills 本质上是一个标准化的文件夹,需要放置在 ~/.claude/skills 目录下。
根据官方文档,标准的目录结构如下:
my-skill/
├── SKILL.md # 核心文件(必需)
├── reference.md # 参考文档(可选)
├── examples.md # 示例集合(可选)
├── scripts/ # 可执行脚本(可选)
│ └── helper.py
└── templates/ # 文件模板(可选)
└── template.txt
关键理解:
- SKILL.md 是唯一的必需文件。它定义了 Skill 的触发逻辑和执行规则——Claude 会根据这份文档判断何时调用该 Skill,以及如何使用它。理论上,仅通过一个 SKILL.md 文件就能构成完整的 Skill。
- reference.md 和 examples.md 提供上下文参考,帮助 Claude 更准确地执行任务。
- scripts/ 存储执行任务所需的代码脚本(如 Python、Shell 等)。
- templates/ 用于快速生成标准化输出。
2. SKILL.md 文件的构成
SKILL.md 分为两个核心部分:
第一部分:YAML Frontmatter(元数据)
---
name: your-skill-name
description: Brief description of what this Skill does and when to use it
---
规范要求:
- name:Skill 的标识符。只能包含小写字母、数字和连字符,最多 64 个字符,不可重复。
- description:这是最关键的字段。Claude 在自动调用 Skills 时,主要依靠 description 判断触发条件。应该包含三个要素:
- 功能定义:这个 Skill 具体做什么
- 适用场景:在什么业务场景下使用
- 触发关键词:用户提及什么关键词时激活
反面例子(不够具象):description: 写作助手 Skill
正面例子(具象、清晰):description: 公众号文章写作助手。根据用户提供的主题、大纲或参考内容,自动生成符合公众号风格的原创文章。当用户提到"写公众号""生成文章"等关键词时触发。
第二部分:主体指令
# Your Skill Name
## Instructions
Provide clear, step-by-step guidance for Claude.
## Examples
Show concrete examples of using this Skill.
主体指令应包含四个维度:
| 维度 | 说明 | 示例 |
|---|---|---|
| 工作流 | 明确的执行步骤。告诉 Claude 第一步干什么、第二步干什么,避免模糊执行 | 1. 解析用户输入的文章主题 2. 生成大纲 3. 按大纲撰写 4. 质量检查 |
| 规范限制 | 执行时应遵守的约束条件。如字数限制、风格要求、禁用内容等 | 文章长度 1500-2000 字;语气:轻松、易懂;禁止虚假数据 |
| 角色定位 | 明确 Claude 在此 Skill 中的角色或身份 | 你是一名资深公众号编辑,擅长撰写高转化率的科普类文章 |
| 示例参考 | 具体的输入输出示例,降低 Claude 的理解成本 | 输入示例 / 预期输出示例 |
3. 实操:创建和部署
步骤 1:在本地创建 Skill 文件夹
mkdir -p ~/.claude/skills/my-skill

步骤 2:在文件夹内创建 SKILL.md(注意大写命名)
touch ~/.claude/skills/my-skill/SKILL.md

步骤 3:编写 SKILL.md 内容
根据上述结构填充元数据和主体指令。
步骤 4:(可选)添加补充文件
如需要,可添加 reference.md、examples.md 或 scripts/ 到同一文件夹。
步骤 5:测试调用
在 Claude Code 或网页端与 Claude 交互,观察是否自动触发该 Skill。若自动调用不够灵敏,可主动指示:「请使用 my-skill 来完成这个任务」。
二、用官方内置 Skill-Creator 自动创建
如果你对手动配置存在疑虑,官方提供了一个内置的 Skill——Skill-Creator,它可以基于你的需求自动生成 Skill 包。
使用流程:
步骤 1:进入 Claude Code 终端
打开 Claude Code,进入交互模式。
步骤 2:描述你的需求
用自然语言表述 Skill 的功能,例如:
「我要创建一个公众号写作助手 Skill,帮我看下如何创建」
Claude 会自动识别并调用 Skill-Creator 进行分析。

步骤 3:逐步细化需求
Skill-Creator 会针对你的需求进行追问,例如:
- Skill 应支持的文章类型?
- 目标字数范围?
- 是否需要配图建议?
根据提示逐一回答。

步骤 4:自动生成和打包
确认所有细节后,Claude 会在 10 分钟左右自动完成 Skill 的构建、打包,并将其放入本地 ~/.claude/skills 文件夹。

步骤 5:测试和迭代
生成后即可测试使用。如有改进需求,既可手动编辑 Skill 文件,也可直接告诉 Claude 修改意见,由其自动更新。

体验总结:这种方式更友好,特别是对初次接触 Skills 的使用者。
自动生成避免了格式错误,同时 Claude 会根据对话上下文生成更贴合实际需求的 Skill。
三、关键注意事项
1. Description 字段的重要性
这是影响 Skill 自动触发的核心因素。应避免笼统表述,改为具象化:
- ❌ 不佳:「写作助手」
- ✓ 推荐:「公众号文章写作助手。专门为公众号平台生成原创文章,支持科普、观点、案例三种风格。当用户提到'写公众号''生成文章'或上传内容大纲时激活。」
2. 单一 Skill 原则
在一次任务中尽量只调用一个 Skill。多个 Skill 同时激活会导致执行冲突或效果下降。如果需要多个功能,应该合并为一个综合 Skill,或通过多轮交互分阶段使用。
3. SKILL.md 是质量的决定因素
清晰的结构直接影响 Claude 的执行质量。建议遵循这个框架:
---
name: xxx
description: 具象的功能 + 触发场景 + 关键词
---
# [Skill 名称]
## 角色定位
你是...
## 工作流
1. 第一步...
2. 第二步...
3. 第三步...
## 规范要求
- 要求 1
- 要求 2
## 示例
输入: ...
输出: ...
4. Skill 的跨端同步
创建完成后的 Skill 可在多个环境中使用:
- Claude Code(终端)
- Claude 网页版
- Claude API
无需重复配置。
总结
从产品经理的角度,自定义 Skill 的意义在于降低工作流中的"AI 交互成本"。每一个精心设计的 Skill 都是一次 Prompt 工程的成果固化——它让重复性的交互指令转化为可复用的能力单元。
两种创建方式各有适用场景:
- 手动创建适合对 Skill 结构有清晰认知、需要精细化控制的用户。
- Skill-Creator 辅助创建适合快速迭代或初学者,降低上手门槛。
无论选择哪种方式,核心要点是:让 description 足够具象、让指令足够清晰、让工作流足够明确。这些细节直接决定了 Claude 是否能准确理解并自动触发你的 Skill。
如果你正在探索 AI 工具在工作中的应用,建议先从一个小需求开始创建 Skill,在实践中体会这种"能力沉淀"的价值。欢迎分享你的创建经验或问题,让我们一起深入探讨 AI 工具的最佳实践。