Claude Code Skills 最佳实践:从结构设计到生产级落地
Anthropic 工程师总结的 Claude Code Skills 设计指南:9 大类型、4 个结构原则、5 个生产级技巧,让 AI 编码助手不再重复犯错。
Claude Code Skills 最佳实践:从结构设计到生产级落地
你用 Claude Code 写退款接口,它把 invoice ID 传进去了,你纠正了,第二天同样的错误又来。一个 Markdown 文件就能让它永远记住——这就是 SKILL.md。Anthropic 工程师 Thariq 发布了一份 Skills 设计指南,覆盖 9 大类型、4 个结构原则和 5 个生产级技巧。这篇文章帮你一次读透。
发生了什么
SKILL.md 的定位类似于给新同事写的交接文档:不教他用 Git,而是告诉他"退款要用 charge ID,不是 invoice ID"。这种踩坑经验官方文档没有,而 Claude 每次启动都会读取 SKILL.md。
Thariq 将 Skill 归纳为 9 大类别:
- Library / API 参考(如 billing-lib)
- Product Verification(如 signup-driver)
- Data / Analysis(如 funnel-query)
- Business Automation(如 standup)
- Scaffolding(如 new-app)
- Code Quality(如 bughunt)
- CI/CD(如 babysit-pr)
- Incident Runbooks(如 oncall)
- Infrastructure Ops(如 orphans)
核心判断标准:一个好的 Skill 应当归入一类;如果横跨三类,就该拆分。
为什么重要
SKILL.md 解决的是 AI 编码助手 最大的痛点——上下文遗忘。每次新会话,模型对你项目的业务陷阱一无所知。靠人工每次重复提示不可持续,而 SKILL.md 将团队的踩坑经验固化成模型可读的格式,实现"错一次,永远记住"。
更关键的是 description 字段的设计哲学。它不是给人看的文档,而是给模型看的触发词。就像外卖 App 的搜索标签——商家标签写"奶茶",用户搜"奶茶"就能找到店,而不是写"基于茶叶的冷饮制品"。babysit-pr 这个 Skill,description 从正式描述改成 "babysit, watch CI" 加一句 "make sure this lands",用户说"帮我盯着这个 PR",Claude 立刻匹配上。一个字段的改动,激活率完全不同。
技术细节
4 个结构原则
Skip Obvious——Claude Code 本来就会用 Git,只写它猜不到的东西。
Build a Gotchas Section——这是最有价值的部分。以 billing Skill 为例:第 1 天 Gotchas 为空;第 2 周加了一条"退款向下取整,不是四舍五入";到第 3 个月积累了 4 条,包括"幂等 key 过期是 24 小时不是 7 天""退款要用 charge ID 不是 invoice ID"。每次 Claude 犯错就加一行,清单越来越值钱。
Progressive Disclosure——采用 hub-and-spoke 模式。SKILL.md 只有 30 行,像分诊台:任务 pending 去读 stuck-jobs.md,消息进死信队列去读 dead-letters.md。Claude 只加载需要的上下文。
Don't Railroad——不要规定每一步。cherry-pick 的好写法只有一句话:"挑到干净分支,保留意图,搞不定就说原因。"给目标,不给脚本。
5 个生产级技巧
- description 写触发短语,用用户会说的话,而非正式定义
- 缓存首次配置——像微信登录扫一次码,之后自动。SKILL.md 嵌入 shell 命令读取
config.json,文件不存在就问你,问完保存,下次直接用 - 用
CLAUDE_PLUGIN_DATA存数据——该目录跨会话持久保存,Skill 升级了数据还在。日报 Skill 每次发完追加日志,下次就能对比昨天的内容 - 给代码不给描述——在 docstring 里直接嵌入 gotchas(如"要用
signup_completed不是signup_started""按anonymous_id去重"),Claude 直接 import 组合,坑都写在注释里 - 加按需钩子做安全护栏——防住危险操作,会话结束自动解除
你现在该做什么
- 打开你最常用的项目,创建第一个
SKILL.md - 写下 Claude 最近犯的 3 个错误,作为 Gotchas 起点
- 把 description 改成用户会说的话,而非正式描述
- 加上首次配置的自动保存机制(读
config.json,不存在就交互创建) - 每次 Claude 犯新错,补一行 gotcha——最好的 Skill 不是一次写对的,是越踩坑越值钱的
相关阅读:Claude Code 是什么 · AI 编码助手对比
觉得有用?订阅 AI 简报,每天 5 分钟掌握 AI 动态。