文章摘要
2026年初Claude Code开发团队经验分享引发关注,披露内部已有数百个Skill稳定运行。文章解析了Claude Code Skill,介绍其概念,列举九大类典型应用场景,提供打造优质Skill技巧,还谈及团队分发与管理方式,强调这一领域尚处早期,需实践探索。

在AI编程工具Claude Code的开发团队内部,已经有数百个活跃的Skill工具,其中最具价值的经验,都藏在日常使用中积累的踩坑记录里。

2026年年初,一篇来自Claude Code开发团队的经验分享引发了行业关注,文中披露了团队内部的Skill实践现状:目前已有数百个Skill在团队内稳定运行,覆盖了从日常开发到运维的多个场景。

这篇分享并没有止步于基础的SKILL.md文件编写,除了梳理出九大类典型的Skill应用场景外,还深入讲解了避坑指南、渐进式内容加载、脚本自动化、动态钩子、团队分发机制以及使用数据统计等实用细节。对于正将Claude Code从个人开发工具拓展为团队协作工作流的开发者来说,这些一线实践的细节远比通用模板更有参考意义。


Skill已经成为Claude Code中使用最广泛的扩展点之一。它灵活易用,制作门槛低,分发也十分便捷。但灵活的特性也带来了选择难题:什么样的Skill值得开发?编写优质Skill的核心要点是什么?什么时候应该将Skill分享给团队其他成员?以下是团队在大规模使用Claude Code Skills过程中总结的完整经验。

什么是Skill

很多人对Skill存在一个常见误解,认为它只是一个简单的Markdown文件。但实际上,Skill本质是一个包含脚本、资源文件、配置数据的完整文件夹,AI代理可以自动发现、读取并操作其中的所有内容。在Claude Code中,Skill还支持丰富的配置选项,包括注册动态Hook,不少极具创造力的Skill正是将这些配置能力和文件夹结构结合起来,实现了超出预期的功能。

如果你刚接触Skill,建议先查阅官方文档或相关入门课程,本文默认你已经对Skill有基础的了解。

Skill的九大典型应用场景

团队在清点内部所有Skill后发现,绝大多数工具都可以归入几个反复出现的类别中。功能清晰的Skill通常能明确归入某一类,而让人困惑的工具往往横跨多个类别。以下并非完整的最终清单,但可以帮助团队检查是否遗漏了关键的能力类型。

1. 库与API参考类Skill:这类工具用于指导AI代理正确使用特定的库、命令行工具或软件开发工具包,既可以针对团队内部自研的工具,也可以用于解决Claude Code在调用通用库时容易出错的场景。这类Skill通常会附带代码片段参考目录,以及一份专门整理的避坑清单,帮助AI代理避开常见的错误。例如内部计费库的Skill会记录边缘场景和容易踩中的陷阱;内部CLI包装器的Skill会列出每个子命令的适用场景;前端设计类Skill则帮助AI代理更好地遵循团队的设计系统规范。

2. 产品验证类Skill:这类工具用于指导AI代理如何测试和验证代码的正确性,通常会配合Playwright、tmux等外部工具完成自动化检查。验证类Skill对保证AI输出的代码质量至关重要,有时候团队会专门安排工程师花一周时间打磨团队的验证类Skill。你可以让AI代理录制测试过程的视频,清晰展示测试的每一个步骤;也可以在每个测试环节添加程序化的状态断言。这些功能通常通过Skill目录下的多个脚本组合实现。例如注册流程驱动Skill可以在无头浏览器中完成注册、邮箱验证和新手引导流程,并通过Hook断言每一步的状态是否正确;结账验证Skill可以使用Stripe测试卡操作结账界面,随后确认发票是否进入正确的状态;tmux命令行驱动Skill则用于测试必须在真实TTY环境中运行的交互式CLI工具。

3. 数据获取与分析类Skill:这类工具用于连接团队的数据与监控栈,可以包含带凭据的数据获取库、特定仪表盘ID,以及常见工作流和取数方式的说明。例如漏斗查询Skill可以回答“要查看注册、激活到付费的转化漏斗,应该连接哪些事件”,并指出真正保存规范用户ID的数据表;群组对比Skill可以比较两个群组的留存或转化情况,标出具有统计显著性的差异,并链接到分群定义;Grafana相关Skill则会记录数据源UID、集群名称,以及从问题到对应仪表盘的查询映射表。

4. 业务流程与团队自动化类Skill:这类工具可以将重复的工作压缩为一条命令。工具的说明本身通常并不复杂,但可能依赖其他Skill或MCP。将历次执行结果保存到日志文件中,可以帮助AI代理保持输出一致性,也方便回顾此前每一次工作流的执行情况。例如站会汇总Skill可以汇总工单系统、GitHub活动和上一次Slack站会的内容,仅输出新增变化并整理成标准的站会格式;创建工单Skill可以强制执行字段Schema,包括合法枚举值和必填项,并完成创建后的流程,比如提醒审核人员、将链接发送到Slack频道;每周回顾Skill可以汇总已合并的PR、已关闭的工单和部署记录,生成格式化的周报。

5. 代码脚手架与模板类Skill:这类工具可以为代码库中的特定功能生成框架样板,也可以与可组合脚本配合使用。当脚手架包含无法完全通过代码表达的自然语言要求时,这类Skill尤其有用。例如新建框架工作流Skill可以按照团队的注解约定创建新的服务、工作流或Handler;新建迁移文件Skill可以提供迁移文件模板和常见避坑要点;创建应用Skill可以生成已经集成认证、日志和部署配置的内部应用。

6. 代码质量与审查类Skill:这类工具用于落实团队内部的代码质量要求并辅助代码审查。为了获得更稳健的结果,可以加入确定性脚本或工具,也可以通过Hook或GitHub Action自动运行。例如对抗式审查Skill可以启动一个全新视角的子代理来审查代码,修复发现的问题并持续迭代,直到剩下的都是细枝末节的问题;代码风格检查Skill可以执行团队的代码风格要求,尤其关注Claude默认不擅长遵守的部分;测试实践Skill可以说明应该如何编写测试、需要测试哪些内容。

7. CI/CD与部署类Skill:这类工具可以帮助在代码库中拉取、推送和部署代码,也可能引用其他Skill来收集数据。例如PR监控Skill可以持续监控一个PR,重试偶发失败的CI任务、解决合并冲突并开启自动合并;部署服务Skill可以依次完成构建、冒烟测试、逐步放量和错误率比较,发现回归后自动回滚;生产环境 cherry-pick Skill可以创建隔离的Worktree、执行Cherry-pick操作、解决冲突,再按照模板创建PR。

8. 运行手册类Skill:这类工具从具体的症状出发,比如Slack线程、告警或错误签名,引导AI代理使用多个工具完成调查,最终生成结构化的报告。例如服务调试Skill可以将高流量服务的症状映射到对应的工具和查询模式;值班运行手册Skill可以拉取告警信息、检查常见故障点并整理调查结果;日志关联工具可以根据一个请求ID,从所有可能处理过该请求的系统中找出对应的日志。

9. 基础设施运维类Skill:这类工具用于处理日常维护和运维流程,其中部分操作具有破坏性,因此非常适合加入安全护栏,帮助工程师在关键操作中遵循最佳实践。例如孤立资源清理Skill可以查找孤立的Pod或Volume、将结果发送到Slack、等待观察期后由用户确认再执行级联清理;依赖管理Skill可以落实团队内部的依赖审批流程;成本调查Skill可以根据具体的存储桶和查询方式,分析“为什么存储或出口流量账单突然上涨”的原因。

打造优质Skill的实用技巧

当你确定了要开发的Skill类型后,接下来就是如何编写一个好用的Skill。以下是团队在实践中总结的有效方法和经验,团队近期还推出了Skill Creator工具,简化了在Claude Code中创建Skill的流程。

避免重复陈述显而易见的内容:Claude Code已经对团队的代码库有足够的了解,AI本身也具备丰富的编程知识和默认的编写习惯,因此如果你的Skill主要用于补充知识,应该优先补充那些能让AI跳出固有思维的内容。比如前端设计类Skill,团队的工程师通过持续和用户的迭代,帮助AI优化设计风格,避开使用Inter字体、紫色渐变这类常见的套路。

建立专门的避坑小节:一个Skill中最有价值的内容往往就是避坑指南,这个小节应该随着AI使用该Skill时遇到的失败场景逐步积累更新。理想情况下,你应该随着使用时间的推移,持续将新发现的陷阱补充到Skill中。

利用文件系统实现渐进式内容加载

前面提到,Skill本质是一个文件夹,而不仅仅是一份Markdown文件。整个文件系统都可以作为上下文工程和渐进式内容加载的一部分。你只需要告诉AI代理Skill目录下包含哪些文件,它就会在合适的时机自动读取这些文件的内容。

最简单的渐进式加载方式,是将详细的函数签名和使用示例拆分到单独的Markdown文件中,比如references/api.md。如果最终的输出需要使用Markdown格式,你还可以在assets/目录中存放模板文件,让AI代理直接复制使用。Skill目录还可以包含references、scripts、examples等子文件夹,帮助AI代理更高效地完成任务。

不要过度限制AI代理的操作空间

AI代理通常会尽量遵循你的指令,但由于Skill会被多次重复使用,因此在编写指令时要避免规定得过于死板。你只需要给AI代理完成任务所需的必要信息,同时保留它根据实际场景灵活调整的空间。

提前规划初始化配置:部分Skill需要先向用户获取必要的上下文信息。比如一个用于发送站会内容到Slack的Skill,可能需要先询问具体要发送到哪个频道。一个好的做法是将配置信息保存到Skill目录下的config.json文件中,如果配置尚未完成,AI代理会主动向用户提问。如果需要让AI代理提出结构化的多选问题,可以明确要求它使用AskUserQuestion工具。

Description字段是为AI代理设计的:当Claude Code启动会话时,会根据所有可用Skill的Description字段生成一个可用工具列表,AI代理正是通过这个列表来判断当前请求是否需要调用某个Skill。因此,Description的核心作用是说明这个Skill适合在什么场景下使用,而不是编写一段供人阅读的项目摘要。

利用数据存储实现记忆功能:部分Skill可以将数据保存在自身目录中,从而实现记忆功能。实现方式可以很简单,比如使用只追加不修改的文本日志或JSON文件;也可以复杂到使用SQLite数据库。比如站会发布Skill可以使用standups.log文件保存每一次发送的站会内容,下次运行时,AI代理可以读取历史记录,对比判断和上一次相比发生了哪些变化。需要注意的是,Skill升级时,保存在Skill目录中的数据可能会被删除,因此应该将数据保存到稳定的目录中。目前团队为每个插件提供了${CLAUDE_PLUGIN_DATA}变量指向的目录,作为持久化存储数据的位置。

预置脚本,让AI代理专注于逻辑组合

代码是你可以提供给AI代理的强大工具之一。预先为AI代理准备好脚本和函数库,它就可以将推理精力放在组合能力、决策下一步操作上,而不需要每次都重新编写样板代码。

比如数据科学类Skill可以提供一组从事件源获取数据的函数,AI代理可以临时生成脚本,将这些辅助函数组合起来,完成更复杂的分析,比如回答“周二发生了什么?”这类问题。

按需启用Hook:Skill可以注册只在被调用时激活,并且仅在当前会话中生效的Hook。这类Hook适合那些不应该一直运行,但在特定场景下非常有用的强约束。比如:/careful Hook可以通过Bash的PreToolUse Matcher阻止执行rm -rfDROP TABLE、强制推送和kubectl delete这类危险操作,仅在确定要操作生产环境时启用,否则一直开启会影响正常开发;/freeze Hook可以阻止对指定目录之外的任何文件进行编辑或写入操作,适合在调试时只想添加日志却不小心修改了无关内容的场景。

Skill的团队分发与管理

Skill的一大优势是可以在团队内部共享使用,主要有两种分发方式:一种是将Skill提交到代码仓库的./.claude/skills目录中;另一种是将Skill打包成插件,搭建专属的Claude Code插件市场,让团队成员可以自行上传和安装插件。

如果团队规模较小,只在少数几个代码仓库中工作,直接将Skill提交到仓库中就可以满足需求。但随着仓库数量和团队人数的增加,每个进入仓库的Skill都会占用一定的模型上下文空间,此时内部插件市场可以集中管理Skill,同时让每个成员自行选择需要安装的工具。

插件市场的管理策略:哪些Skill应该进入市场?提交的流程应该如何设计?团队并没有设立专门的集中决策团队,而是让真正有价值的Skill自然浮现。如果你想让其他人试用你的Skill,可以先将其上传到代码托管平台的Sandbox目录,再通过内部沟通渠道邀请大家使用。当Skill获得足够的使用量后,由Skill负责人判断是否可以提交PR将其移入正式的插件市场。需要注意的是,很容易开发出质量不佳或功能重复的Skill,因此正式发布前必须设置一定的筛选机制。

Skill之间的组合使用:部分Skill会依赖其他Skill的功能。比如一个文件上传Skill负责处理文件上传逻辑,另一个CSV生成Skill负责创建CSV文件并调用上传能力。目前插件市场和Skill本身并没有内置依赖管理功能,但你可以在Skill的说明文档中直接引用其他Skill的名称,只要这些依赖的Skill已经安装,AI代理就会自动调用它们。

度量Skill的使用情况:为了了解每个Skill的实际表现,团队使用PreToolUse Hook记录公司内部的Skill使用数据,这样可以清晰地看到哪些Skill最受欢迎,以及哪些Skill的触发次数低于预期,帮助团队优化和迭代Skill生态。

结语

Skill是AI代理工具中非常强大且灵活的扩展方式,但这个领域仍处于早期发展阶段,大家都在不断探索如何更好地使用它。

与其将这份分享当成一份权威指南,不如将其看作一份经过实践验证的经验集合。理解Skill的最佳方式就是动手实践,不断尝试不同的实现方式,观察哪些方法对自己的团队最有效。我们团队的大多数Skill最初都只有几行文字和一个简单的避坑条目,随着AI代理遇到新的边缘场景,以及使用者不断补充新的经验,这些Skill才逐渐完善起来。

希望这些内容能对你有所帮助,如果你有任何问题,欢迎随时交流。

以上内容不代表本平台立场,仅供读者参考