Skill扫盲:从提示词补丁到AI工作流,我如何用dev-skill把经验沉淀成能力系统
Skill扫盲:从提示词补丁到AI工作流,我如何用dev-skill把经验沉淀成能力系统
这半年我越来越强烈地感觉到一件事:
AI Coding 真正的分水岭,已经不只是“模型够不够强”,而是“你有没有办法把合适的方法,在合适的时机交给它”。
很多人第一次接触 Skill,会觉得它只是另一种 Prompt 封装。
但如果你真的在 Claude Code、Codex、Cursor 这类工具里持续做开发,就会发现 Skill 解决的问题,比“保存几段提示词”要大得多。
它在解决的是:
- 如何减少每次都重复灌上下文
- 如何让 AI 在对的阶段进入对的工作流
- 如何把个人经验变成团队可以复用的能力
- 如何把分析、开发、审查、排障、文档这些动作串成闭环
这篇文章,我想把 Skill 这件事完整讲透,尽量做到既能扫盲,也能落地。
文章会分成四层:
Skill为什么会出现Skill的核心原理和机制是什么Skill和Rules / Commands / MCP到底怎么分工- 结合我自己的
dev-skill仓库,看看它在真实研发流程里能做什么
本文内容结合了我在 2026 年 6 月 9 日 的内部分享文档《门店后端AI学习分享-Agent Skill 工作流》,以及当前
dev-skill仓库中的实际 Skill 设计与目录结构整理而成。
一、为什么会有 Skill
如果你经历过 AI Coding 从早期到现在的演进,会发现大家一直在解决同一个问题:
怎么把合适的信息,在合适的时机,放进模型的上下文里。
一开始最常见的做法,是写 Rules。
比如:
- 这个仓库的业务背景是什么
- 编码规范是什么
- 哪些坑不能踩
- 哪些目录不能乱改
这些东西一开始很有用,因为它能明显减少模型幻觉。
但问题也很快出现了:
Rules越写越长- 很多规则只在特定任务下才相关
- 它们却会在每次对话里都被加载
- token 消耗会越来越高
尤其是在真实项目里,你很容易遇到这种情况:
- 查日志时不需要开发规范
- 画架构图时不需要数据库排障说明
- 写文档时不需要完整编码规则
- 只做链路分析时,不应该每次都把 2000 token 的开发 rules 带上
这就是 Skill 出现的背景。
Skill 的第一性价值
如果把它压成一句话,我会这样定义:
Skill的本质,是把原来“总是加载”的静态上下文,改造成“按需加载”的动态上下文。
也就是说,Skill 不是单纯多了一个文件格式,而是在改变上下文管理方式。
它追求的是:
- 先只暴露极少量的索引信息
- 让 Agent 判断是否相关
- 真正需要时,再加载完整方法
- 更深的资料和脚本,继续延后到需要的时候再读或再执行
这就是它最关键的思想:渐进式披露。
二、什么是 Skill
通俗一点讲,Skill 可以理解成:
一份带名字、带描述、带操作说明、还能挂资源和脚本的能力模块。
它通常至少包含两层内容:
- 元数据:
name、description - 正文:
SKILL.md里的工作流、约束、步骤、触发条件
更完整一点的 Skill,还会带上:
references/:参考文档、模板、补充说明scripts/:脚本、校验器、同步器、自动化工具assets/:图片、模板、静态资源
所以一个 Skill 不只是“告诉 AI 该说什么”,更像是:
给 AI 一份“这类任务应该怎么做”的可执行说明书。
三、Skill 的核心原理:渐进式披露
这是 Skill 最值得理解的地方。
很多人第一次听这个概念,会觉得有点抽象。
其实你可以把它想成翻一本手册:
- 平时只看目录
- 需要时再翻章节
- 实在要落地,再去查附录和工具
在 Skill 体系里,大致可以分成三层。
第一层:目录层
这一层通常就是 name + description。
它的特点是:
- 始终可见
- 很短
- token 消耗很低
- 作用是告诉 Agent:“现在有哪些能力可以选”
这一步本质上是在做能力发现。
第二层:章节层
这一层是 SKILL.md 的正文。
它的特点是:
- 只有在 Skill 被判断相关后才加载
- 主要描述 SOP、约束、流程、边界
- 让 Agent 知道“这类事应该怎么推进”
比如:
- 先检查项目上下文
- 再问澄清问题
- 再产出方案
- 再拆任务
- 最后才进入实现
第三层:附录层
这一层通常是:
references/scripts/- 模板文件
- 外部数据
它的特点是:
- 不是一开始就读
- 需要的时候才展开
- 有些内容甚至不用进上下文,直接执行脚本就行
这一步很关键,因为它让 Skill 的能力不再只停留在 Prompt,而是开始连接真实文件系统和自动化动作。
一张图看懂 Skill 的三层结构
flowchart TD
A["元数据<br/>name + description"] --> B["SKILL.md 正文<br/>流程、约束、SOP"]
B --> C["references/<br/>模板、补充文档、案例"]
B --> D["scripts/<br/>校验、同步、查询、自动化执行"]
C --> E["按需继续加载"]
D --> F["按需执行,不必全进上下文"]
这套设计的好处非常直接:
- 平时只花很少 token 看目录
- 触发后才读方法正文
- 复杂资源进一步延迟加载
- 脚本可以直接干活,减少模型硬记细节
如果你做过大项目,就会知道这件事有多重要。
因为上下文预算永远是稀缺资源。
四、Skill 和 Rules、Commands、MCP 到底有什么区别
这是最容易混淆的一组概念。
我现在更倾向于把它们看成同一条链路上的不同层。
1. Rules:静态长期背景
Rules 适合放这种内容:
- 仓库总原则
- 通用编码规范
- 业务红线
- 不变的团队约定
它的优点是稳定,缺点是会被反复加载。
2. Commands:手动触发的静态入口
Commands 更像是:
- 一段你希望随叫随到的固定操作模板
- 一条快捷工作流入口
比如:
/openspec-proposal/openspec-apply
它解决的是“重复手动输入”的问题,但本质上仍偏静态。
3. MCP:真实工具与系统接入
MCP 的重点不是“告诉 AI 怎么想”,而是“让 AI 真能做事”。
它可以负责:
- 查日志
- 调数据库
- 调第三方 API
- 操作 GitHub、飞书、Jira
- 访问浏览器、桌面、文件系统
所以 MCP 更像工具层。
4. Skill:方法层与工作流层
Skill 的重点是:
- 什么时候该做什么
- 做这类事应该遵循什么顺序
- 该用哪些资源、哪些脚本、哪些 MCP
所以它更像方法层。
一句话区分
你可以这么记:
Rules负责长期背景Commands负责快捷入口MCP负责工具能力Skill负责方法编排
Skill 和 MCP 不是替代关系
这一点特别重要。
很多人会问:
Skill 和 MCP 不都是“给 AI 增强能力”吗?
表面看像,但本质不同。
我更认同这个说法:
MCP 把 Claude / Codex 连接到数据和系统;Skill 教会它如何处理这些数据、何时调用这些系统。
也就是说:
- Skill 决定“怎么做”
- MCP 决定“能做什么”
两者组合起来,效果才最好。
flowchart LR
U["用户任务"] --> S["Skill<br/>决定流程与方法"]
S --> M["MCP / Scripts / Tools<br/>执行真实动作"]
M --> R["结果返回"]
R --> S
五、Skill 能做什么
如果只把 Skill 理解成“写作提示词模板”,会低估它很多。
在真实研发里,Skill 至少能覆盖下面几类事情。
1. 做需求澄清和方案设计
比如我仓库里的:
brainstorming
它不是单纯让 AI 多问几个问题,而是把“需求澄清 -> 方案对比 -> 分段确认 -> 落文档”的流程固定下来。
2. 做开发流程编排
比如:
sdd-intelligent-routersdd-dev-workflowdev-lifecycle
它们解决的是:
- 什么任务该快速直做
- 什么任务该走 Spec 驱动开发
- 技术方案、提案、实现、测试如何串起来
3. 做代码质量保障
比如:
author-final-reviewcode-reviewfull-reviewintegration-test
这里 Skill 不只是“帮你看看代码”,而是把影响面分析、代码质量审查、测试建议变成标准输出。
4. 做线上排障与系统查询
比如:
zan-dev-flowzan-log-queryzan-rds-opszan-redis-queryzan-apollo-queryzan-dubbo-invoke
这些 Skill 已经非常接近“半自动排障助手”了。
5. 做文档与协同系统打通
比如:
feishu-wiki-skillproject-writerdiagram-creation
它们能把文档读写、图表生成、Markdown 同步、图片分析这些动作接起来。
6. 做团队级协作与多 Agent 编排
比如:
vibe-working-agent-team
它已经不是单点技能,而是在组织角色分工、tmux 分屏和交付节奏。
所以从结果上看,Skill 可以做的事情远比“一个提示词”丰富得多。
六、结合我的 dev-skill 仓库,Skill 是怎么落地成体系的
说抽象概念容易,但真正有意思的,是它怎么落地。
我自己的 dev-skill 仓库,核心定位非常明确:
一次维护,多端同步,把高频研发流程沉淀成可复用的 Skills,并统一分发到 Cursor、Claude Code、Codex,甚至 OpenClaw 兼容层。
1. 它不是“零散技能集合”,而是一个 source of truth
在这个仓库里,dev-skill 本身是技能源码仓。
也就是说:
- 日常开发在这里改
- 团队共享从这里同步
- 常用 Skill 通过 profile 安装
- 与其他分发仓通过脚本和 manifest 对齐
这很重要,因为 Skill 一旦多起来,如果没有“单一事实来源”,很快就会失控。
2. 它是分层组织的
仓库当前把 Skills 分成几类:
skills/dev/:开发流程类skills/cr/:代码审查与测试类skills/writing/:文档与图表类skills/zan/:排障和内部工具链skills/lark/:飞书协同能力skills/helm/:技能治理类skills/platform/:安装、统计、团队协作等平台能力
这种分类不是为了好看,而是为了降低认知成本。
你看到目录,大致就知道能力落在哪一层。
3. 它支持跨工具同步
dev-skill 不是只服务一个 IDE。
当前这套仓库可以同步到:
~/.cursor/skills~/.claude/skills~/.codex/skills.union与~/.codex/skills~/.openclaw/skills
这意味着同一套 Skill 设计,可以在多个 Agent Harness 里复用。
这一点对团队推广特别关键,因为否则你会陷入:
- Cursor 一套
- Claude 一套
- Codex 再来一套
最后维护成本会非常高。
4. 它不是只管分发,还管治理
这是我很看重的一点。
仓库里不只是有业务 Skill,还有治理 Skill,比如:
skill-usage-trackerskill-creatorskill-publishknowledge-distillerauto-installer
这说明一件事:
Skill 系统一旦进入团队,就不只是“写几个好玩的 Prompt”,而是要进入完整的生命周期管理。
也就是:
- 怎么创建
- 怎么安装
- 怎么追踪使用
- 怎么发布
- 怎么沉淀经验
这是 Skill 从“玩法”走向“基础设施”的标志。
七、从几个代表性 Skill 看它的真实价值
这一段我想直接拿仓库里的 Skill 举例,因为这样比抽象定义更有说服力。
1. brainstorming:把“先想清楚”写成工作流
这个 Skill 的核心思想非常简单,但非常重要:
不要一上来就写代码。
它会要求 Agent:
- 先看项目上下文
- 一次只问一个关键问题
- 给出候选方案和取舍
- 分段展示设计并确认
- 最后写成设计文档
这其实是在把优秀工程师的思考顺序显式化。
2. sdd-dev-workflow:把 Spec-Driven Development 做成可执行流水线
这个 Skill 更进一步。
它不只是“按方案开发”,而是把下面这些动作串起来:
- 找技术方案
- 提取能力点
- 匹配相关应用
- 创建 OpenSpec 提案
- 等待用户确认
- 按任务顺序实施开发
这已经不是单个 Prompt 能承担的事情了,而是完整的流程编排。
3. full-review:把代码审查做成组合技能
从仓库设计上看,full-review 不是一个孤立技能,而是把多个审查能力组合起来。
它通常会串联:
- 影响面分析
- 代码质量审查
- 测试建议生成
这说明 Skill 的价值不只是“单点能力”,还包括能力编排。
4. zan-dev-flow:把排障入口统一起来
这类 Skill 很适合内部研发场景。
用户不需要先自己决定:
- 该查日志
- 该查 Redis
- 该查 HBase
- 还是该查 Apollo
而是先从一个统一路由入口进去,再分发到原子能力。
这和前面说的 Skill 负责方法层,MCP 负责工具层 非常契合。
5. feishu-wiki-skill:Skill 不只是“会想”,还应该“会干”
这个 Skill 很有代表性,因为它不仅有说明文档,还有成体系的脚本:
- 读取 wiki/docx/bitable
- 下载并分析图片
- 把 Markdown 同步到飞书文档
- 渲染 Mermaid 后上传
这说明 Skill 最强的形态,不是纯文本,而是:
文档方法 + 资源说明 + 脚本执行 + 外部系统接入
6. vibe-working-agent-team:Skill 可以上升到多角色协作
这个 Skill 已经开始组织:
- 多角色分工
- tmux 多窗口
- Team Lead 协调
- PRD -> 方案 -> 开发 -> CR 的交付路径
它让我越来越确信一件事:
Skill 的上限,不是“某个任务怎么做”,而是“一个团队如何协作完成任务”。
八、Skill 的几种关键机制
如果你想真正写好 Skill,光知道概念还不够,还得理解它常见的机制设计。
1. 触发机制
Skill 一般有两种触发方式:
- 主动触发:用户点名 Skill
- 被动触发:用户只描述意图,由 Agent 判断该用哪个 Skill
这意味着 Skill 不只是“被调用”,还需要“可发现、可匹配”。
所以 name 和 description 往往特别重要。
2. 渐进式加载机制
这就是前面说的三层披露:
- 目录层
- 正文层
- 资源层
Skill 设计得越好,越不会一开始就把所有东西灌进上下文。
3. 组合与依赖机制
很多大 Skill 本身不会单干,而是组合别的 Skill。
比如仓库里的依赖关系就很典型:
sdd-intelligent-router会路由到ai-pair-programmer和sdd-dev-workflowsdd-dev-workflow本身依赖其他开发类能力full-review会串起 review 与测试相关 Skillzan-dev-flow会分发到日志、缓存、数据库等原子能力
这说明 Skill 系统并不是平铺的,而是一个图。
4. 资源外置机制
很多重要信息不适合都写进 SKILL.md。
更好的做法是:
- 流程放正文
- 长说明放
references/ - 自动化动作放
scripts/
这样既减少上下文噪音,也方便复用和维护。
5. 治理与观测机制
这个机制经常被忽略,但团队化后非常重要。
比如我的仓库里就有:
skill-usage-tracker
它会记录:
- 哪个 Skill 被用了多少次
- 最近一次是什么场景
- 哪些 Skill 真正高频
这会反过来影响后续治理,比如:
- 哪些 Skill 值得继续打磨
- 哪些 Skill 应该合并
- 哪些 Skill 实际没人用
九、Skill 设计里,我觉得最有价值的几个经验
写到这里,我其实更想分享一些实践感受。
1. Skill 不是“把 Prompt 存起来”
真正好的 Skill,核心不是文案,而是:
- 决策顺序
- 任务边界
- 信息加载节奏
- 资源组织方式
Prompt 只是表层。
2. Skill 越贴近真实工作流,价值越大
最有价值的 Skill,往往不是那种“万能专家 Prompt”,而是:
- 需求澄清 Skill
- Spec 驱动开发 Skill
- 审查闭环 Skill
- 排障路由 Skill
- 文档同步 Skill
因为这些东西本来就在团队里高频出现。
3. Skill 的核心复利在于经验沉淀
这件事我现在越来越确定。
一个团队真正有复利的,不是每个人都临场发挥得多聪明,而是:
能不能把做过十次、踩过十次坑的事情,沉淀成第十一次可以直接复用的方法。
Skill 恰好就是这种经验的载体。
4. Skill 最终会走向“Prompt + Tool + Workflow + Governance”
如果只看现在,很多人会觉得 Skill 还处在早期。
但从趋势上看,我认为它一定会继续往这几个方向发展:
- 更强的自动触发
- 更清晰的依赖图
- 更成熟的 Skill 市场
- 更标准的治理与分发机制
- 更深的 MCP 和脚本联动
换句话说,Skill 不会停留在“方便写 Prompt”这个层面。
它更像是 Agent 时代的方法资产格式。
十、如果你要开始搭自己的 Skill 系统,我建议怎么做
最后给一个更务实的建议。
如果你准备在自己的团队里推广 Skill,我不建议一上来就做几十个。
更稳的路径通常是:
第一步:先找高频且稳定的任务
比如:
- 需求澄清
- 技术方案写作
- 代码审查
- 日志排障
这些任务的共同点是:
- 高频
- 有固定结构
- 容易标准化
第二步:先把方法写成 Skill,不要急着全自动
一开始最重要的,不是“写多厉害的脚本”,而是先把:
- 顺序
- 边界
- 输入输出
定义清楚。
第三步:再把资源和脚本往外挪
等 Skill 稳定后,再逐步补:
references/scripts/- 模板
- MCP 接入
第四步:最后再做治理
也就是:
- 安装
- 统计
- 发布
- 沉淀
这样做,系统会稳很多。
十一、最后一句话:我为什么觉得 Skill 值得认真做
因为它解决的不是一个“小技巧”问题,而是一个“AI 如何真正进入工作流”的问题。
过去很多人用 AI,像在和一个聪明聊天机器人对话。
但当你开始把:
- 规则
- 方法
- 工具
- 资源
- 治理
这些东西组合起来以后,AI 才会开始更像一个真正能协作的执行系统。
而 Skill,正是这条路上非常关键的一层。
它让我们第一次可以比较系统地回答这个问题:
怎么把个人经验,变成团队可复用、可维护、可组合、可演进的 Agent 能力。
这也是为什么我越来越愿意把 dev-skill 这种仓库,看成一种新的研发基础设施,而不只是“AI 时代的提示词收藏夹”。
延伸阅读
- 如果你想看一篇更偏实操的
Superpowers使用说明,可以读 Superpowers使用指南:把Claude Code和Codex变成真正会按流程工作的开发Agent。 - 如果你想看多 Agent 和 tmux 分屏怎么落成协作流水线,可以读 Agent Team使用教程:用Tmux分屏把多个AI串成自动协作流水线。
- 如果你想看一次真实的分析、开发、审查闭环,可以读 Claude Code Agent Team协作全记录:3个AI如何串起需求、开发与审查闭环。
- 如果你想继续往底层理解 harness、memory、skill 的工程结构,可以读 Claude Code Harness深度分析:从RAG、Skill、Memory到企业Agent落地。





