创作 Claude 代码技能的完整指南 — SKILL.md 结构、控制加载的触发器描述、渐进式披露以及技能何时击败 CLAUDE.md 或子代理。 提供了可行的示例和要避免的错误。

  • Claude Code
  • Agent SDK
  • Markdown
  • YAML
  • Proprietary
  • 更新于 2026-05-29

—## 介绍在 Subagent vs MCP vs Skill中我们绘制了三轴图:技能移动知识轴,子代理移动上下文,MCP服务器移动能力。 此后,我们发布了有关子代理轴的深入指南 - 创作自定义代理编排失败模式。 本指南完成了三重奏:如何创作技能本身。技能是三者中最被低估的,因为它们看起来微不足道——“它只是一个 Markdown 文件。” 但精心编写的技能之间的区别在于,“当你需要它时,它就会出现”,而"CLAUDE.md"则过于臃肿,以至于每个提示都拖着 4,000 个规则标记,而没有人的任务现在需要它。 我们将介绍 SKILL.md 结构、决定一切的触发器描述、保持简洁的渐进式披露、两个有效示例,以及导致技能永远不会触发的错误。## 技能实际上是什么技能是一个目录,而不仅仅是一个文件:```` .claude/技能/cut-release/ SKILL.md # frontmatter + 说明 参考文献/ versioning.md # 详细信息,按需加载 脚本/ bubble-version.sh # 技能可以运行的可执行文件

SKILL
.md` 是入口点。 它的前言声明了该技能的身份,并且至关重要的是*何时应该加载*。 身体持有该程序。 支持文件(参考、模板、脚本)并存,仅在需要时才拉入。 技能位于".claude/skills/"(项目,与团队共享)或"~/.claude/skills/"(用户,计算机上的每个项目)中。## Skill 与 CLAUDE.md:加载问题这是一个让人们绊倒的决定。 两者都持有指令; 区别在于*加载时*。- **CLAUDE.md** 在**每次**交互时加载。 它适用于始终在线、项目范围内的不变量:"使用选项卡"、"永远不要强制推送主程序"、"我们的 API 基础是 X"。
- **技能**仅当其描述与当前任务匹配**时才加载。 它适用于情境程序:"如何减少发布"、"如何启动新服务"、"我们的事件操作手册"。测试:*此指令是否适用于有关任何内容的随机提示?*如果是 → CLAUDE.md。 如果它只在特定类型的任务→技能中重要。 将情景剧本塞进 CLAUDE.md 是第一个上下文膨胀错误; 每一个提示都会为它不需要的知识付费。## Frontmatter:名称和描述``降价
---
名称: 剪裁释放
description: 在剪切版本、发布新版本、标记构建或准备发行说明时使用。 逐步完成版本更新、更改日志、标记和发布步骤。
---哟```降价
---
名称: 剪裁释放
description: 在剪切版本、发布新版本、标记构建或准备发行说明时使用。 逐步完成版本更新、更改日志、标记和发布步骤。
---
---


 您正在帮助削减发布。 按顺序执行以下步骤...
 ```当前任务,并加载该技能的主体。 所以描述不是标签——它是**何时触发条件**。 用具体的触发器包装它:> ❌`description: 释放助手。`
 > ✅`description: 在剪切版本、发布版本、标记构建或编写版本说明时使用。 涵盖版本更新、变更日志生成、git 标签和发布。第一个永远不会触发,因为实际任务中没有任何内容与"释放助手"匹配。 第二个在用户说"让我们发布 2.4.0"时触发。 如果你的技能存在但从未激活,那么说明每次都是罪魁祸首。## 写正文:一个过程,而不是一篇文章正文是技能加载后克劳德遵循的指令。 三个规则:1. **是一个过程,而不是散文。** 模型执行的编号步骤,以便击败上下文段落。 "1. 更改 package.json 中的版本。2. 从最后一个标签以来的提交重新生成变更日志。3. ..."
 2. **内联说明先决条件和陷阱。** "在标记之前,确认 CI 在 main 上是绿色的"——人类知道要检查的那种事情。 
3. **指向重要的细节,不要内联它。** 如果版本控制策略是 800 个字,请将其放在 `references/versioning.md` 中并写入"对于版本冲突规则,请阅读references/versioning.md"。 接下来是渐进式披露。## 渐进式披露:保持 SKILL.md 的简洁性技能创作中的权力转移。 SKILL.md 应该 **小** — 触发器加上概述加上指针。 繁重的材料存在于支持文件中,仅当任务到达时才会加载。为什么重要:描述和概述必须便宜,因为它们会被扫描以进行路由。 详细的 2,000 字规范只有在技能实际使用并且任务需要这种深度时才属于上下文。 内嵌一切的技能违背了目的——你又回到了 CLAUDE.md 式的膨胀,只是触发方式不同而已。``降价
 ## 步骤
 1. Bump版本(semver规则参见references/versioning.md)
 2.运行scripts/changelog.sh生成草稿
 3....
 ````
Claud
e
仅在实际需要规则时才读取"references/versioning.md",而不是每次加载时都会读取。## 示例:发布清单技能``降价
 ---
 名称: 剪裁释放
description: 在剪切版本、发布版本或标记构建时使用。 涵盖版本升级、变更日志、标签、发布和绿色 CI 前提````
markdow
n
## 步骤
 1. Bump版本(semver规则参见references/versioning.md)
 2.运行scripts/changelog.sh生成草稿
 3....
 ``` 确定新版本(semver;请参阅references/versioning.md)。 
2. 将其添加到 package.json 和任何版本常量中。 
3. 从最后一个标签以来的提交生成变更日志。 
4. 开启发布PR; 等待审核。 
5.合并后:标记、推送标记、发布。报告您停止了哪一步```
markdow
n
---
 名称: 剪裁释放
description: 在剪切版本、发布版本或标记构建时使用。 涵盖版本更新、变更日志、标签、发布和绿色 CI 前提条件。 
---

 你正在削减一个版本。 不要跳过前提条件检查。 

前提条件:确认主电源上的 CI 为绿色。 如果没有,请停止并报告。 

步骤:
 1. 确定新版本(semver;请参阅references/versioning.md)。 
2. 将其添加到 package.json 和任何版本常量中。 
3. 从最后一个标签以来的提交生成变更日志。 
4. 开启发布PR; 等待审核。 
5.合并后:标记、推送标记、发布。 

如果有任何障碍,请报告您停在哪一步。 
```e
n
t
结果 = 测试顺序或共享状态依赖。 
2. 检查未等待的异步、实时计时器和固定睡眠。 
3. 检查测试之间共享的可变状态。 
4. 找出原因后,提出修复建议。 不要"添加重试"。 
````注意嵌入的领域知识(四个常见原因)——这是机构专业知识,经过打包,任何人都会触发高级工程师的心理检查表。## 常见的创作错误- **描述模糊。** 该技能存在但从未触发。 添加具体的触发短语——用户在需要时实际输入的单词。 
- **CLAUDE.md 中的所有内容。** 情景程序使每个提示都变得臃肿。 将他们转移到技能上。 
- **内联大量细节。** 2,000 字的 SKILL.md。 使用渐进式披露——指向"references/"。 
- **散文而不是程序。** 读起来像论文一样的技能。 降价次数
 ---
 名称: 调试片状测试
description: 当测试有时通过而有时失败时,或者在调查套件中的 CI 不稳定、间歇性故障或竞争条件时使用。 
---

 您正在诊断一个不稳定的测试。 片状几乎总是以下之一:
 共享状态、定时/异步、测试顺序依赖性或外部资源。 

1. 重现:单独运行测试 20 倍,并使用全套测试运行 20 倍。 
不同的结果 = 测试顺序或共享状态依赖。 
2. 检查未等待的异步、实时计时器和固定睡眠。 
3. 检查测试之间共享的可变状态。 
4. 找出原因后,提出修复建议。 不要"添加重试"。 
``共享环境:1. **团队共享、CI 调用工作流程的可靠主机。** 技能受版本控制并也在 CI 中运行。 **HTStack
** — 香港VPS,低延迟中国大陆访问,稳定的BGP。 托管 dibi8.com 的 IDC 相同。 5-12 美元/月。2. **并行运行的云空间。** **DigitalOcean
** — 200 美元免费赠金,适用于 14 个以上区域,为期 60 天。3. **技能包。** 编写优秀技能的最快方法是阅读优秀技能。 我们在 Gumroad 上将五项经过实战检验的技能打包为 19 美元的捆绑包(请参阅角落里浮动的 CTA),其中的描述、渐进式披露结构和捆绑脚本都已正确完成。## 相关阅读- [Subagent vs MCP vs Skill](/resources/llm-frameworks/claude-code-subagent-vs-mcp-server-skill-agent-2026/) — 至此完成的三轴框架。 
- [自定义代理创作](/resources/llm-frameworks/claude-code-custom-agent-authoring-guide-2026/) — 本指南的同级子代理轴。 
- [AI Agent 技能 2026 开发人员指南](/resources/llm-frameworks/ai-agent-skills-2026-developer-guide/) — 更广泛的技能生态系统。 
- [子代理模式](/resources/llm-frameworks/claude-code-subagent-patterns-multi-agent-workflows-2026/) — 技能如何与委派的工作人员组合。## 判决技能是最便宜、最被低估的扩展点——一个带有 markdown 文件的目录,可以将情境专业知识转化为即时上下文。 整个过程简化为两件事:**描述**包含true正的触发短语,因此它会在正确的时刻触发,以及**渐进式披露**,因此它保持轻松,直到任务需要其深度。 写好这两点,你就已经打包了一个程序,你的整个团队——以及每次 CI 运行——都可以在相关的时候免费获得。 这就完成了三重奏:知识技能、上下文子代理、能力 MCP 服务器。

💬 留言讨论