最反直觉的一条写在官方文档里:你并不需要一个「写 skill 的 skill」。所以这九件里最值钱的那半段,不是起草,是评估。
前四期讲的是「装别人的 skill」。到某一天你会发现,你真正想要的那个 skill 没人写过——它装着你团队的表结构、你的写作口径、你那套没人懂的部署流程。这一期收的是造工具的工具:起草、评估、打包、体检这条链上,官方真的给了什么。九个条目全部来自 Anthropic 官方仓库与官方文档,都能点开;第 03 节把这四个官方 skill 自己的写法拆成判据,第 04 节讲这一类最容易白装在哪。
# ① 官方 skills 仓库:注册 marketplace,再按包装
/plugin marketplace add anthropics/skills
/plugin install example-skills@anthropic-agent-skills
/plugin install document-skills@anthropic-agent-skills
# skill-creator 另有一条官方 plugin 源(Claude Code 文档给的就是这条)
/plugin install skill-creator@claude-plugins-official
# ⑧ 体检:列出每个 skill 的 context 开销与调用频次(需 v2.1.252+)
/skill-doctor
# ⑨ 校验:查 YAML 与清单语法
claude plugin validate .claude/skills
agents/grader.md 按断言打分,跑 scripts.aggregate_benchmark 汇成 benchmark.json,再用 eval-viewer/generate_review.py 让人肉过一遍。Claude Code 文档描述的同一条链是:测试用例存进 skill 目录下的 evals/evals.json → 每条用例开独立 subagent 跑 → 结果进 grading.json → 通过率/耗时/token 汇进 benchmark.json。它还能做 A/B 与 description 调优。scripts/init-artifact.sh 起项目、scripts/bundle-artifact.sh 用 Parcel 打成 bundle.html,初始化时就带好 40 多个 shadcn/ui 组件。shared/prompt-caching.md、shared/cost-optimization.md、shared/model-migration.md、shared/token-counting.md 等。它不是造 skill 的工具,收进本榜是因为它是「一个 SKILL.md 挂多份领域文档」这个结构最完整的官方范本(Skill 23 会把它拆开)。template/ 下只有这一个文件,内容短到近乎挑衅——frontmatter 里 name: template-skill 加一句「把 description 换成这个 skill 做什么、什么时候该用」,正文只有一行 # Insert instructions below。这就是官方认为的最小合格骨架。spec/agent-skills-spec.md 现在只剩一句话——规范已迁至 agentskills.io/specification。这条本身就是情报:字段真相源已经从 Anthropic 仓库挪到了独立站点(Claude Code 的 skills 文档也把评估章节指向同一个站)。抄 2025 年的仓库快照会抄到旧版。marketplace.json 的 schema 错误、重名、源路径穿越、版本不一致。anthropics/skills 据 GitHub 仓库页 2026-09 约 17.5 万 star / 2.07 万 fork(本站 Skill 01 在 2026-08 记的是 17.2 万,一个月涨了约三千)。但这个数字量的是「示范仓库有多出名」,不是「里面哪个 skill 有人用」——整仓 19 个 skill 共用同一个 star 数,skill-creator 和 slack-gif-creator 在这个指标上完全等价,显然荒谬。
更实际的分层理由是可替代性:⑤ template 与 ⑦ 最佳实践是纯文本,你抄进自己的仓库就永远拥有它,没有版本风险;①—④ 是会跑的东西,升级、依赖、脚本失效都跟着上游走;⑧—⑨ 是 Claude Code 的能力,换个 harness 就没有了。三层的保质期完全不同,别拿同一套标准挑。
还有个坑:名字会被抄错。③ 的真名是 web-artifacts-builder,不少聚合文章写成 artifacts-builder——照那个名字装会装不上、让 agent 去找会找不到。同理 ⑥ 的位置也已经变了:仓库里那个文件还在,但内容只剩一句「规范已搬到 agentskills.io」。硬规矩:任何要写进配置或喂给 agent 的名字与路径,一律以仓库目录或官方文档页面为准。
anthropics/skills 克隆下来当元技能全家桶——那 19 个里有 algorithmic-art、slack-gif-creator、canvas-design,跟造 skill 一点关系都没有,只会把你的 description 候选池搅浑。先记住硬约束(官方 authoring 页原文):name ≤ 64 字符,只许小写字母、数字、连字符,不能含 anthropic / claude 这类保留词;description ≤ 1024 字符,非空,必须第三人称;正文建议 500 行以内;引用只许一层深。另外 Claude Code 文档还给了一个容易被忽略的数:skill 列表里 description 与 when_to_use 合起来按 1536 字符截断——写超了的部分不是被读到,是被砍掉。
skill-creator 的原文:「create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description」。一句里塞进 create / edit / optimize / run evals / benchmark 五组说法,因为用户嘴里可能是任何一种。只写「Helps with skills」的,要么永不触发,要么到处乱触发。mcp-builder 要求那 10 道题「答案要支持字符串比对」。这句是分水岭:写得出这句的作者,知道自己在追求什么;写不出的,交付标准就是「看起来还行」。web-artifacts-builder 把起项目和打包写成 init-artifact.sh / bundle-artifact.sh,而不是每次让模型现编。官方的理由很直白:预置脚本更可靠、更省 token(只有输出计费,脚本内容不进上下文)、结果还一致。claude-api 按语言 + 按主题拆出十几份文档,SKILL.md 只当目录。官方明确警告:嵌套引用时模型常常只 head -100 扫一眼开头,拿到残缺信息;所以所有 reference 都要从 SKILL.md 直连。超过 100 行的 reference 还该自带目录。顺序也别写反。官方 authoring 页把「先建评估,再写文档」写成加粗要求,五步是:跑无 skill 的真实任务、记下具体失败 → 就这些缺口造三个场景 → 量出基线 → 只写刚好够补缺口的字 → 迭代对照基线。它给的理由是:这样你解决的才是真问题,而不是想象出来的需求。
authoring 最佳实践页里有一条 Tip,直白到有点扫兴:Claude 原生就懂 skill 的格式与结构,你不需要特殊系统提示词、也不需要一个「写 skill 的 skill」,直接叫它写,它就会生成结构正确、frontmatter 齐全的 SKILL.md。
那 skill-creator 的价值在哪?在它后半段那套评估机器,不在起草。并行开两组 subagent 做有/无 skill 对照、按断言打分、汇出 benchmark.json——这套东西你手搓要花一整天。冲着「帮我生成 SKILL.md」去装它,你付了 context 税,换回来的是本来就免费的东西。
skills / query / files / expected_behavior),却明说目前没有内置的方式来跑这些评估,要自己搭;Claude Code 侧的 skill-creator 则有自己一整套 evals.json → grading.json → benchmark.json 的流程。两条线不通用。claude plugin validate 当质量门是误会——它是语法体检,不是内容体检。skill-creator 常驻一整年的 description 候选池。所以写完就该 /skill-doctor 回头查账——它会标出从没被触发过的 skill,那些直接删掉,留着只会让别的 skill 更难被选中。agentskills.io、Claude Code 的评估章节也指过去,意味着你的 skill 库要跟着一个仓库之外的版本走。跨 harness 用的团队,该把当期规范的关键字段抄一份进自己仓库,别每次现查。mcp-builder 去写一个只包一次 HTTP 调用的小 server——那四阶段流程加 10 道验收题,会让你为一件半小时的事付一整天。它的划算区间是「你要给别人用、要长期维护」的 server。先装这三个:skill-creator(冲评估那半段装,不是冲起草)+ 把 template/SKILL.md 拷成自己仓库里的起手式(纯文本,零成本,永不过期)+ 把 /skill-doctor 变成两周一次的习惯。mcp-builder 只在你真要写一个长期维护的 server 时装;claude-api 当「多域 reference 怎么拆」的范本读;web-artifacts-builder 只在你真要做富交互 artifact 时装。
装之前三分钟:description 有没有铺满触发词且第三人称 · 有没有可机器核验的验收标准 · 确定性动作是不是落成了脚本 · reference 是否按域拆且只有一层 · 自由度是否匹配任务脆弱性 · 说不说得出它解决的三个具体失败。
写自己的 skill 时,顺序是:跑一遍没有 skill 的真实任务 → 记下具体失败 → 造三个场景 → 量基线 → 只写刚好够补缺口的字 → 对照基线迭代。别反过来先写文档。
硬数字备查:name ≤ 64 字符 · description ≤ 1024 字符 · 列表里 description+when_to_use 按 1536 字符截断 · SKILL.md 正文 < 500 行 · 引用只许一层深 · 至少三条评估 · Haiku/Sonnet/Opus 各测一遍。
skill-creator 汇总产物:把「带 skill」与「不带 skill」两组的通过率、耗时、token 放在一起对照。name(≤64 字符)与 description(≤1024 字符),决定这个 skill 会不会被触发。/plugin marketplace add 与两条 /plugin install 命令即上文原文agents/grader.md 打分 + scripts.aggregate_benchmark 汇总的完整流程init-artifact.sh / bundle-artifact.sh 两个脚本,注意真名带 web- 前缀SKILL.md,官方认可的最小骨架/plugin install skill-creator@claude-plugins-official、/skill-doctor(需 v2.1.252+)、1536 字符截断、目录层级表claude plugin validate 查什么,以及「从 marketplace 目录跑时不打开 skill 文件」这条限制