PHANTHYWORK / BLOG

Claude Code Skills 完整教程:Anthropic 官方是怎么用 Skill 的?

Lessons from building Claude Code: How we use skills

Claude Code Skills 完整教程:Anthropic 官方是怎么用 Skill 的?头图

本文为 Claude by Anthropic 官方博客完整中文译文。版权归原作者及 Anthropic 所有;如译文与原文存在差异,请以英文原文为准。

1. 库和 API 参考

这类 Skills 用于说明如何正确使用库、CLI 或 SDK。它们既可以面向内部库,也可以面向 Claude Code 有时难以正确处理的常用库。这类 Skills 通常包含一个存放参考代码片段的文件夹,以及一份注意事项清单,帮助 Claude 在编写脚本时避开常见陷阱。

示例包括:

  • billing-lib — 你的内部计费库:边界情况、易踩的坑等。
  • internal-platform-cli — 你的内部 CLI 封装中每个子命令的说明,以及应在何时使用它们的示例。
  • sandbox-proxy — 为开发工作配置组织的出口网关:哪些主机可以访问、如何调试“connection refused”错误,以及如何添加 allowlist 条目。

2. 产品验证

这类 Skills 用于说明如何测试或验证代码是否正常工作。它们通常会与 playwright、tmux 或其他外部验证工具配合使用。

在 Anthropic 内部,验证类 Skills 对 Claude 输出质量的改善最为显著且可量化。让一位工程师花一周时间专门把验证类 Skills 做到出色,可能非常值得。

可以考虑让 Claude 录制其输出的视频,以便你准确看到它测试了什么;或者要求它在每一步都通过程序化断言验证状态。这些能力通常通过在 Skill 中包含各种脚本来实现。

示例包括:

  • signup-flow-driver — 在无头浏览器中完整执行注册 → 邮箱验证 → 新手引导流程,并提供可在每一步断言状态的 Hooks
  • checkout-verifier — 使用 Stripe 测试卡驱动结账 UI,并验证发票是否真正进入了正确状态
  • tmux-cli-driver — 用于交互式 CLI 测试,适合被验证对象需要 TTY 的情况

3. 数据获取和分析

这类 Skills 用于连接你的数据和监控技术栈。它们可能包含使用凭证获取数据的库、特定的 dashboard id 等,以及有关常见工作流或数据获取方式的说明。

示例包括:

  • funnel-query — “要查看注册 → 激活 → 付费,需要关联哪些事件”,以及真正存放规范 user_id 的表
  • cohort-compare — 比较两个 cohort 的留存率或转化率,标记具有统计显著性的差异,并链接到用户分群定义
  • grafana — 数据源 UID、集群名称,以及问题 → dashboard 的查找表
  • datadog — 字段参考(@request_id 与 trace_id)、服务列表以及指标前缀约定

4. 业务流程和团队自动化

这类 Skills 能把重复性工作流自动化为一条命令。它们通常只是相当简单的说明,但可能会更复杂地依赖其他 Skills 或 MCP。对于这类 Skills,将先前的结果保存在日志文件中,可以帮助模型保持一致,并回顾该工作流此前的执行情况。

示例包括:

  • standup-post — 汇总你的工单跟踪系统、GitHub 活动和先前的 Slack 内容 → 生成格式化的站会汇报,仅包含变化
  • create-<ticket-system>-ticket — 强制执行 schema(有效的枚举值、必填字段),并完成创建后的工作流(通知评审者、在 Slack 中发布链接)
  • weekly-recap — 已合并的 PR + 已关闭的工单 + 部署记录 → 格式化的每周回顾帖

5. 代码脚手架和模板

这类 Skills 用于为代码库中的特定功能生成框架样板代码。你可以将这类 Skills 与能够组合使用的脚本结合起来。当脚手架存在无法完全通过代码表达的自然语言要求时,它们尤其有用。

示例包括:

  • new-<framework>-workflow — 使用你的注解为新服务、工作流或 handler 搭建脚手架
  • new-migration — 你的 migration 文件模板及常见注意事项
  • create-app — 创建新的内部应用,并预先接好身份验证、日志和部署配置

6. 代码质量和评审

这类 Skills 用于在组织内部落实代码质量标准并协助评审代码。为了最大程度地提高稳健性,它们可以包含确定性的脚本或工具。你可能需要通过 Hooks 或在 GitHub Action 中自动运行这些 Skills。

  • adversarial-review — 启动一个以全新视角进行审查的 Subagent,让它提出批评意见、实施修复并反复迭代,直到发现的问题只剩吹毛求疵的小问题
  • code-style — 强制执行代码风格,尤其是 Claude 默认情况下不擅长遵循的风格。
  • testing-practices — 有关如何编写测试以及应测试哪些内容的说明。

7. CI/CD 和部署

这类 Skills 帮助你在代码库中获取、推送和部署代码。它们可能会引用其他 Skills 来收集数据。

示例包括:

  • babysit-pr — 监控 PR → 重试不稳定的 CI → 解决合并冲突 → 启用自动合并
  • deploy-<service> — 构建 → 冒烟测试 → 逐步放量并比较错误率 → 出现回归时自动回滚
  • cherry-pick-prod — 隔离的 worktree → cherry-pick → 解决冲突 → 使用模板创建 PR

8. Runbooks

这类 Skills 从某个症状入手(例如 Slack 讨论串、告警或错误特征),引导完成跨多个工具的调查,并生成结构化报告。

示例包括:

  • <service>-debugging — 针对流量最高的服务,将症状 → 工具 → 查询模式对应起来
  • oncall-runner — 获取告警 → 检查常见问题来源 → 格式化调查结果
  • log-correlator — 给定一个 request ID,从所有可能处理过该请求的系统中拉取匹配的日志

9. 基础设施运维

这类 Skills 用于执行日常维护和运维流程,其中有些涉及破坏性操作,因此会受益于防护措施。它们能让工程师在关键操作中更轻松地遵循最佳实践。

示例包括:

  • <resource>-orphans — 查找孤立的 pod/volume → 发布到 Slack → 观察期 → 用户确认 → 级联清理
  • dependency-management — 你所在组织的依赖审批工作流
  • cost-investigation — “为什么我们的存储/出口流量账单突然增加”,并附上具体的 bucket 和查询模式

制作 Skills 的技巧

确定要制作什么 Skill 之后,该如何编写它?以下是 Claude Code 团队在制作 Skills 方面总结的一些最佳实践、技巧和诀窍。

不要陈述显而易见的内容

Claude 已经知道如何编程,也能阅读你的代码库。一个只是重复 Claude 默认会做之事的 Skill,只会增加 Context,却不会增加价值。如果你发布的 Skill 主要用于传递知识,请专注于那些能够推动 Claude 跳出常规思维方式的信息。

前端设计 Skill就是一个很好的例子