【Anthropic内部如何用Skills改进Claude Code】
快速阅读:Anthropic团队在实践中总结出Skills的9种典型用法和核心原则:Skills本质是包含脚本、数据、配置的文件夹系统,最有价值的部分不是告诉AI如何做,而是记录它会犯的错误。团队通过内部市场和使用日志来管理数百个Skills,让工程师自行决定采纳哪些。
—
很多人以为Skills只是markdown文件。错了。
它是个文件夹,里面可以放脚本、数据、配置项,甚至SQLite数据库。Claude能发现这些内容,探索它们,操作它们。真正有趣的Skills都在创造性地使用这些能力。
Anthropic内部现在有数百个活跃的Skills。我们把它们分成了9类:
1. 库和API参考 — 解释怎么正确使用某个库或CLI,尤其是Claude容易搞错的地方。比如内部账单库的边界情况,或者设计系统的正确用法。
2. 产品验证 — 描述如何测试代码是否工作。配合Playwright或tmux这类工具,Claude能录制测试视频,在每个步骤做程序化断言。值得让工程师花一周时间把这类Skills做到极致。
3. 数据获取和分析 — 连接监控系统,告诉Claude去哪个表找canonical user_id,或者哪个Grafana面板对应什么问题。
4. 业务流程自动化 — 把重复性工作变成一条命令。比如自动生成standup,从ticket系统、GitHub、Slack里聚合信息,输出格式化的进展报告。
5. 代码脚手架 — 生成框架模板,特别是那些有自然语言需求、无法纯靠代码覆盖的部分。
6. 代码质量审查 — 强制执行代码风格,甚至启动一个“对抗性审查”子代理来批评代码,迭代修复直到只剩nitpick。
7. CI/CD和部署 — 监控PR,重试不稳定的CI,解决merge冲突,逐步上线流量并自动回滚。
8. Runbook — 拿到一个症状(Slack消息、告警、错误信号),走完多工具调查流程,输出结构化报告。
9. 基础设施运维 — 找出孤儿资源,发到Slack确认,等待观察期,然后级联清理。
写Skills最重要的几点:
别说废话。 Claude已经知道很多东西了。你应该专注于那些能改变它默认思维方式的信息。前端设计Skill就是个好例子,它专门教Claude别用Inter字体和紫色渐变。
建立Gotchas清单。 这是任何Skill里信号最强的部分。随着Claude碰到新问题,持续更新这个清单。
用文件系统做渐进式披露。 别把所有内容都塞进一个markdown。告诉Claude有哪些文件,它会在合适的时候去读。API文档可以放在references/api.md,模板可以放在assets/。
别过度限制Claude。 Skills会被反复使用,指令太具体会让它失去适应能力。给它信息,但保留灵活性。
设置环节要想清楚。 有些Skills需要用户输入(比如发到哪个Slack频道)。可以把配置存在config.json里,如果没配置就让Claude去问。
Description字段是给模型看的。 这不是给人看的摘要,而是让Claude判断“什么时候该触发这个Skill”的依据。
Skill可以有记忆。 用追加日志或JSON文件存储数据。比如standup Skill可以保存历史记录,这样下次运行时Claude就知道昨天说了什么。
给Claude提供脚本,而不是让它重写。 最强大的工具是代码本身。给它一套函数库,让它专注于组合和决策,而不是重构样板代码。
分发Skills有两种方式:
检入到./.claude/skills目录(适合小团队)或建立内部插件市场(适合大规模使用)。Anthropic的做法是,任何人都可以把Skill传到sandbox文件夹,在Slack里分享。如果有人觉得好用,再提PR移到正式市场。
没有中心化审批。靠使用数据和口碑来筛选。
我们用PreToolUse hook记录每个Skill的使用情况,能看到哪些被频繁调用,哪些被冷落了。
大部分Skills一开始只有几行字和一个gotcha,是在Claude不断碰壁的过程中长大的。
ref: x.com/trq212/status/2033949937936085378
#AI创造营# #人工智能#
