内容来源:Bits, Bugs, and Opinions。https://tomakl.dev/posts/anthropic-skills-repo/
原题:Anthropic open-sourced their skills repo
原发布时间:2026-03-05
Anthropic 的 Skills 仓库已经在 GitHub 公开:其中包含什么、skill-creator 如何工作,以及这对 Claude Code 用户意味着什么。
来源与版本说明(核对日期:2026-07-21):这是 Tomasz 的独立技术评论,并非 Anthropic 官方博客文章。公开的 Skills 仓库仍然包含 17 个 Skill 目录,并记录了下文保留的安装命令。README 称许多 Skills 使用 Apache-2.0,但四项文档 Skills 只是源代码可用,并非开源;它还建议在关键用途之前测试所有示例。文章中的优化器精确设置和触发论断仍具有版本时效性。来源中有一个代码围栏错误地把目录树标成
gdscript3;归档仅将该围栏标签规范为text。

Anthropic 发布了 github.com/anthropics/skills。这是 Claude Skills 的参考集合,内容从文档处理,到 MCP 服务器生成,再到内部沟通模板。文档 Skills(pdf、docx、xlsx、pptx)就是为 Claude 内置文件创建功能提供能力的真实代码,其余内容使用 Apache 2.0。
比单项 Skills 更有意思的是,这个仓库揭示了整套系统如何工作,特别是 skill-creator Skill。它包含一套完整的迭代工作流,带有评测和描述优化器。如果你一直凭直觉编写 Claude Code Skills,这是一个能帮助你更有意识地开展工作的优秀参考。
仓库中有什么
skills/ 目录包含 17 项 Skills,分属不同类别:
创意与设计:algorithmic-art、canvas-design、brand-guidelines、theme-factory、slack-gif-creator
开发与技术:mcp-builder、webapp-testing、web-artifacts-builder、frontend-design、claude-api
企业与沟通:internal-comms、doc-coauthoring
文档 Skills(源代码可用,但非开源):pdf、docx、xlsx、pptx
元 Skill:skill-creator
从透明度角度来看,文档 Skills 最有意思。Anthropic 表示,它们“正在一款生产级 AI 应用中被积极使用”。查看 pdf Skill 的描述,可以看到它能处理文本提取、OCR、合并、拆分、填写表单、加密和图片提取。一个描述字段就覆盖了所有功能。真正的繁重工作想必由 Skill 正文完成,但决定 Claude 是否会调用它的却是描述。
Skills 实际如何工作
规范也包含在该仓库中,并指向 agentskills.io。它描述了一套三级加载系统:
1、元数据(名称 + 描述):始终存在于上下文中,大约 100 个单词。Claude 决定是否调用某项 Skill 时,看到的只有这些内容。
2、SKILL.md 正文:Skill 触发后加载到上下文,理想情况下控制在 500 行以内。
3、捆绑资源:脚本、参考资料和素材按需加载。
Skill 目录结构如下:
my-skill/
├── SKILL.md
└──(可选)
├── scripts/ 用于确定性任务的可执行代码
├── references/ 按需加载到上下文的文档
└── assets/ 输出中使用的模板、图标与字体
渐进式披露模型意味着,你可以编写精简的描述和 SKILL.md 正文,再把大部分内容转移到参考文件。skill-creator 指南建议把 SKILL.md 控制在 500 行以内,并为超过 300 行的参考文件添加目录。
第三级加载有一个实际影响:如果多次测试运行都会各自编写同一个辅助脚本,就说明应该把它捆绑进 Skill。skill-creator 指南称之为“跨测试用例的重复工作”。把脚本放进 scripts/,告诉 Skill 使用它,今后的每次调用就都不必重新发明轮子。
描述字段就是完整的触发机制
这是最容易让人栽跟头的部分。Skills 并不是靠关键词触发。Claude 会读取名称和描述,再根据它与当前任务的匹配程度决定是否使用这项 Skill。在 Claude 已经决定调用之前,Skill 正文不会参与判断。
skill-creator 的 SKILL.md 对此有一条明确说明:
“目前,Claude 容易‘触发不足’——即使 Skills 有用,也不会使用。为了应对这种情况,请让 Skill 描述稍微‘强势’一些。”
他们给出的示例是:不要只写“如何构建一个简单、快速的内部数据仪表盘”,而应写成“如何构建一个简单、快速的内部数据仪表盘。只要用户提到仪表盘、数据可视化、内部指标,或者想展示任何形式的公司数据,即使没有明确说出‘仪表盘’,也务必使用这项 Skill。”
你可以在 pdf Skill 描述中看到这种模式:“如果用户提到 .pdf 文件或要求生成 PDF,请使用这项 Skill。”internal-comms Skill 则加入了“只要被要求编写某种内部沟通内容,Claude 都应使用这项 Skill”。这种措辞毫不含蓄。
仓库还包含一个描述优化器,通过自动循环提高触发准确率。它会生成 20 条评测查询(应触发与不应触发的混合),按 60/40 拆分为训练集与测试集,为每条查询评估当前描述三次,再调用开启 Extended Thinking 的 Claude 提出改进方案。它最多运行五轮,并根据测试集得分而非训练集得分选择最佳描述,以避免过拟合。运行方式如下:
python -m scripts.run_loop \
--eval-set path/to/trigger-eval.json \
--skill-path path/to/skill \
--model claude-sonnet-4-5 \
--max-iterations 5 \
--verbose
skill-creator 工作流
skill-creator 是一项用于构建 Skills 的 Skill,也是仓库中记录得最完整的内容。它描述的工作流如下:
1、捕捉意图(Skill 应该做什么、什么时候触发)
2、编写 SKILL.md 草稿
3、编写两三条测试提示词,并行运行使用和不使用 Skill 的两组测试
4、测试运行期间,起草量化断言
5、为结果评分、汇总为基准测试,再打开审查查看器
6、阅读用户反馈、改进 Skill,然后重复
7、优化描述
评测查看器是一个本地 Web 应用,包含两个标签页:一个用于并排浏览定性输出(使用 Skill 与不使用 Skill,或者新版本与旧版本),另一个用于查看量化基准。基准会显示通过率、用时和 Token 使用量,并附带均值与标准差。“盲测比较”模式是可选的:它把两份输出交给独立子智能体,不说明分别来自哪一组,再要求它判断质量。多数用户都不需要这个功能。
评分步骤使用带三个字段的 JSON 断言:text(要检查内容的描述)、passed(布尔值)和 evidence(评分器看到的证据)。其余工作由基准汇总脚本处理。
对于输出具有主观性的 Skills(写作风格、设计),指南建议完全跳过量化断言,依赖人工审查。这很合理:强行对“它看起来好不好”进行通过/失败评分,只会制造噪声。
在 Claude Code 中从仓库安装
/plugin marketplace add anthropics/skills
随后浏览并安装 document-skills 或 example-skills,也可以直接安装:
/plugin install document-skills@anthropic-agent-skills
/plugin install example-skills@anthropic-agent-skills
安装后,只要说出想做的事即可。“使用 PDF Skill 从这个文件提取表格”已经足够。Skill 触发文档称,Claude 可以直接处理的简单单步请求可能不会触发 Skill;复杂的多步骤任务会更稳定地触发。
这对自定义 Skill 作者意味着什么
对于 Claude Code 用户而言,这个仓库的主要价值不在于其中的单项 Skills。多数内容都是有用的参考,但你更可能根据需要调整,而不是原样使用。
真正有用的是:
skill-creator 提供了一套结构化迭代循环。 不再只是“写一份 SKILL.md,试几次,再调整”,而是获得带指标的正规“起草—测试—审查—改进”循环。如果你正在构建每天都会使用的东西,多付出一些设置成本是值得的。
描述优化器消除了猜测。 触发是 Skill 设计中最困难的部分。能有一个工具生成逼真的边界评测查询、批量运行测试,再根据失败情况提出描述改进建议,相比手动调整可以节省大量时间。
渐进式披露结构为复杂 Skills 提供了一种模式。 如果 SKILL.md 已经增长到 300 行以上,答案很可能是创建 references/ 文件,而不是继续增加内联文本。
“强势描述”的建议可以立即应用。 无需配置评测工具,也能把“只要用户询问 X,即使没有明确提到 Y,也应使用这项 Skill”加入现有 Skills。如果某项 Skill 无法稳定触发,通常就是这个原因。