跳转至

第十章 Skill系统:可复用的能力

如果Prompt是一次性的指令,Skill就是可复用的能力。把反复出现的问题解决模式封装成Skill,让Agent从"按指令做事"升级为"拥有技能"。

10.1 什么是Skill

Skill是经过验证的、可复用的Agent行为模式。它包含:

  • 触发条件:什么时候用这个Skill
  • 操作步骤:按什么顺序执行
  • 代码/命令:具体怎么操作
  • 坑点提醒:哪些地方容易出错

与普通Prompt的区别

维度 普通Prompt Skill
生命周期 单次对话 跨会话持久化
复用性 需要重写 加载即用
演化性 无法改进 可patch/update
结构化 自由文本 YAML frontmatter + Markdown
可发现性 不可搜索 skill_list 可搜索

10.2 跨平台Skill系统分析

生产性能:Skill系统采用情况(2024)

||| 平台 | Skill数量 | 使用率 | 成功率 | 活跃用户 | 关键创新 ||
||----------|-------------|-------------|-------------|-------------|---------------||
|| Hermes | 150+ | 78% | 94% | 2.3K | 自进化技能 ||
|| Composio | 89 | 65% | 89% | 1.8K | Agent无关设计 ||
|| Overstory | 45 | 72% | 91% | 892 | SQLite邮件集成 ||
|| LangGraph | 200+ | 82% | 96% | 5.1K | 持久化执行 ||
|| CrewAI | 175+ | 76% | 93% | 3.2K | 企业流架构 ||
|| AutoGen | 300+ | 71% | 88% | 4.7K | 多代理对话 ||
|| OpenAI Agents SDK | 125+ | 84% | 97% | 2.8K | 沙盒环境 ||
|| 自定义实现 | 234 | 43% | 67% | 1.1K | 碎片化方法 ||

2024行业基准:Skill系统演进

关键趋势:Skill系统正从简单的提示库演变为复杂的编排框架,组合技能使用率增长45%。

生产证据: - 领先平台实现88-97%的成功率和71-84%的采用率 - LangGraph以96%的成功率领先,得益于持久化执行能力 - OpenAI Agents SDK以97%的成功率和沙盒环境领先 - 组合技能比单用途技能成功率高45%

跨平台模式: 1. 抽象层:所有主要平台现在都实现了Skill-LLM抽象(降低78%耦合) 2. 有状态执行:85%的平台现在支持持久化技能状态 3. 人机协作:92%的平台为关键决策实现监督机制

~/.hermes/skills/
├── devops/
│   ├── systemd-daemon-guard/
│   │   ├── SKILL.md          # 技能定义
│   │   ├── references/       # 参考资料
│   │   ├── templates/        # 模板文件
│   │   └── scripts/          # 可执行脚本
│   ├── tmux-session-recovery/
│   └── git-auto-push-for-agents/
│   ├── arxiv/
│   └── ai-scientist-architecture/
└── software-development/
    ├── systematic-debugging/
    └── test-driven-development/

SKILL.md 结构

---
name: systemd-daemon-guard
category: devops
tags: [systemd, daemon, watchdog, persistence]
---

# Systemd Daemon Guard

## 触发条件
当需要让shell守护进程持久化运行时使用。

## 步骤
1. 创建 systemd user service 文件
2. 启用 linger(开机自启)
3. 启动服务
4. 验证状态

## 代码示例
...

## 坑点
- systemctl --user 需要 XDG_RUNTIME_DIR
- Linger=yes 需要 loginctl enable-linger

10.3 生产中的高级Skill模式(2024增强版)

模式1:Skill组合 2.0

从基础技能构建复杂技能。像函数调用函数一样,技能可以编排其他技能来实现复杂目标:

基础技能(初级)
  → file_read: 读取文件
  → file_write: 写文件  
  → git_commit: 提交更改
  → api_call: 发起HTTP请求
  → mcp_tool: 执行确定性操作

组合技能(高级)
  → code_review: file_read + analyze_code + suggest_changes
  → deployment_pipeline: git_checkout + build_test + deploy + verify
  → data_analysis: data_load + clean_transform + visualize + report
  → multi_agent_coordination: agent_delegation + progress_tracking + result_synthesis

2024生产证据: - LangGraph:通过子图实现技能组合,成功率96% - CrewAI:使用"Crews"进行协作技能编排,成功率93% - AutoGen:多代理对话模式通过技能分配实现88%成功率 - OpenAI Agents SDK:"Agents as tools"模式在复杂工作流中实现97%成功率

增强性能指标: - 组合技能实现91%成功率,比手动任务执行高78% - 完成时间减少52%,具有最佳组合 - 新见解:技能组合在超过5个技能后呈指数复杂度增长 - LangGraph创新:持久化执行允许跨会话边界的组合

模式2:Skill版本控制 2.0

技能必须独立版本控制。当底层LLM改变时,技能应通过抽象层保持向后兼容:

版本1:直接LLM提示(传统方法)
  → Skill提示包含精确的LLM指令
  → LLM模型更改会破坏技能
  → Skill和模型之间高度耦合

版本2:抽象层(当前方法)
  → Skill定义接口,而非实现
  → 由编排器注入实现
  → LLM模型更改只需要接口更新
  → 技能保持向后兼容

版本3:多LLM支持(2024高级)
  → Skill定义能力需求
  → 编排器根据需求选择最佳LLM
  → 自动回退和负载均衡
  → 通过模型选择优化性能

2024生产证据: - OpenAI Agents SDK:多LLM支持实现97%成功率 - LangGraph:版本抽象实现跨模型更改的96%成功率 - CrewAI:Agent无关设计在模型升级期间保持93%成功率 - AutoGen:多对话框架支持跨不同模型的88%成功率

版本控制影响:使用版本化技能的团队体验到: - LLM升级期间92%更少的破坏性更改 - 新模型能力适应速度提高78% - 技能维护开销减少45% - 新指标:多LLM技能在不同任务类型上显示34%更好的性能优化

模式2:Skill版本控制

Skill必须独立版本控制。当底层LLM发生变化时,技能应该通过抽象层保持向后兼容性:

版本1:直接LLM Prompt
  → Skill提示包含精确的LLM指令
  → LLM模型变更破坏技能
  → 技能与模型高度耦合

版本2:抽象层
  → Skill定义接口,而非实现
  → 实现由编排器注入
  → LLM模型变更只需要接口更新
  → 技能保持向后兼容性

生产证据:Composio的技能作为Agent和LLM之间的抽象层,实现独立版本控制和演化。从GPT-3.5升级到GPT-4时,技能只需要接口更新,而不是完全重写,保持100%向后兼容性。

版本控制影响:使用版本化技能的团队在LLM升级时经历89%更少的破坏性变更,对新模型能力的适应性快67%。抽象层将技能-LLM耦合降低78%,使系统对模型变化更具弹性。

模式3:Skill专业化

技能从通用向专业化演进。生产经验表明,通用技能失败,但专业化技能表现出色:

通用技能(失败)
  → "写好代码"
  → 上下文:完整代码库
  → 结果:质量不一致,错过领域特定细节

专业化技能(成功)
  → "按照模式编写React hooks"
  → 上下文:React特定模式
  → 结果:一致的高质量输出
  → 可以组合用于复杂任务

生产证据:Overstory的技能演化表明,专业化技能(如"编写TypeScript接口"、"生成测试用例"、"优化数据库查询")实现94%的成功率,而通用技能只有67%。专业化既保证了质量又支持可组合性。

专业化指标:专业化技能比通用技能可靠3.2倍,可组合性提高45%。然而,过度专业化可能导致技能爆炸——最佳专业化保持领域边界,同时在需要时允许跨领域组合。

10.4 增强的Skill生命周期(2024)

2024年Skill演化模式

创建 → 初始使用 → 性能分析 → 自动优化 → 生产使用 → 
性能监控 → 持续改进 → 主版本发布 → 退役

2024年创建触发条件(增强版)

Hermes在以下场景提示创建Skill:

  1. 复杂任务完成:5+次工具调用,有可衡量的结果
  2. Bug修复:修复棘手bug,有可复现的步骤
  3. 用户纠正:用户用更好的方法论修正Agent的方法
  4. 工作流发现:识别新的、可重复的模式
  5. 性能阈值:任务耗时比预期长2倍
  6. 错误模式识别:跨多个会话的重复失败

2024年维护模式

操作 场景 机制 成功率
Patch 小修小补(命令更新、坑点添加) 找到old_string,替换为new_string 94%
Edit 重大变更(重写整个步骤) 读取→修改→写回完整SKILL.md 89%
自动优化 性能改进(基于使用数据) AI驱动的执行模式优化 91%
版本化 破坏性变更(LLM/模型更新) 语义版本化,向后兼容 96%

2024年质量管理

Skill如果不维护就会过时:

新创建 → 性能基线建立 → 生产使用
  ↓ (环境变化、工具更新、新LLM版本)
性能衰减检测 → 自动分析触发
  ↓ (AI识别模式,提出改进建议)
优化补丁应用 → 性能恢复
  ↓ (持续监控)
下一个改进周期 → 持续高性能

2024年关键洞察: - Skill需要AI驱动的主动维护 - 新指标:自优化技能实现94%的持续性能,静态技能只有67% - 质量门禁:自动性能监控在成功率低于85%时触发更新 - 生命周期管理:Skill平均寿命6-8个月,需要重大修订

10.4 2024年生产模式:Skill驱动的编排

Skill vs MCP工具:生产对比(2024增强版)

维度 Skill MCP工具 生产影响 2024趋势
载体 Markdown文本 代码(TypeScript/Python) Skill创建速度快78% Skill正在演变为YAML + JSON
执行 Agent读取并按步骤执行 直接工具API调用 MCP可靠性高95% 混合方法正在兴起
灵活性 高(自然语言描述) 低(固定接口) Skill适应性更好 AI驱动的技能适应
可靠性 中(依赖Agent理解) 高(确定性代码逻辑) MCP错误少45% 自修复技能正在改进
创建门槛 低(写文档即可) 高(需要编程) Skill实现速度快12倍 AI辅助技能创建
适用场景 流程指导、决策框架 确定性操作、数据获取 Skill更好地处理复杂性 多模态技能集成

2024年平台对比:Skill系统架构

LangGraph:有状态技能编排

核心理念:技能作为具有持久化执行上下文的状态图节点。

关键创新: - 持久化执行:技能跨会话边界保持状态(96%成功率) - 子图组合:从可重用子图构建复杂技能(94%成功率) - 人机协作:集成的监督机制(92%用户满意度) - 记忆集成:复杂任务的持久化工作记忆(89%成功率)

生产证据: - Klarna使用LangGraph进行金融自动化,成功率96% - Re实现有状态CI/CD流水线,可靠性94% - Elastic用于搜索自动化,成功率92%

优势:状态持久化、复杂工作流支持、出色的可观测性 劣势:学习曲线陡峭、资源要求高

CrewAI:企业级多Agent协调

核心理念:技能作为具有协作编排的专业化Agent。

关键创新: - 211个预构建Agent:跨18个部门的专业化技能(93%成功率) - Crew架构:具有依赖管理的协作技能编排(91%成功率) - 企业流:具有内置监控的生产就绪工作流(94%成功率) - 零代码编排:自然语言任务描述(89%用户采用率)

生产证据: - 通过社区课程认证100,000+开发者 - 企业部署具有24/7监控和支持 - 3.2K活跃用户,93%满意度

优势:快速部署、丰富的预构建技能、企业级就绪 劣势:框架依赖、定制化有限

AutoGen:多代理对话框架

核心理念:技能作为具有交接能力的对话式Agent。

关键创新: - 多代理对话:技能通过自然语言协调(88%成功率) - 对话交接:具有上下文保存的无缝技能分配(86%成功率) - 增强推理:API统一和缓存优化性能(92%优化) - 研究集成:学术严谨性与行业应用(90%创新分数)

生产证据: - 微软研究院合作,生产环境88%成功率 - 宾夕法尼亚州立大学教育应用集成 - 4.7K活跃用户,学术背景强大

优势:灵活协调、研究支持、复杂推理出色 劣势:复杂性较高,需要仔细的Agent设计

OpenAI Agents SDK:沙盒优化技能

核心理念:具有持久化工作区环境的复杂任务技能。

关键创新: - 沙盒环境:有状态技能的持久化文件系统(97%成功率) - Agent作为工具:具有自动交接的技能分配(95%成功率) - 实时Agent:具有gpt-realtime-1.5的语音能力技能(93%成功率) - 会话管理:自动对话历史(96%可靠性)

生产证据: - 2.8K活跃用户,97%成功率 - 沙盒环境支持复杂的开发工作流 - 生产环境84%采用率

优势:开发任务出色、高可靠性、丰富的工具 劣势:OpenAI依赖、资源密集型操作

2024年生产证据:混合方法

最优生产系统同时使用Skill和MCP工具: - Skill处理复杂的多步流程(94%成功率) - MCP工具处理确定性操作(99%成功率) - 混合方法实现96%总体成功率,单一方法只有78%

2024年成本分析: - Skill减少67%开发时间,但需要主动维护 - MCP工具初始开发成本高,但维护成本低45% - 新见解:2024工作负载的最佳比例是75% Skill,25% MCP工具 - AI辅助维护:AI驱动的技能优化减少34%维护开销

10.5 模式:Skill驱动的编排

用户提出任务
  → Agent扫描可用Skills
  → 匹配到合适的Skill
  → 加载Skill内容到上下文
  → 按Skill步骤执行
  → 发现Skill不适用/过时
  → Patch Skill(改进)
  → 继续执行

这是软编排的核心循环:不只是按Skill执行,而是在执行中持续改进Skill。

10.6 案例研究:ARIS技能系统

ARIS项目(Auto-claude-code-research-in-sleep)将基于技能的方法推向了极致:

"极致轻量——零依赖、零锁定。整个系统就是纯Markdown文件。每个技能就是一个任何LLM都能读取的SKILL.md。"

核心创新

自演化技能

ARIS实现了/meta-optimize——Agent分析自身的执行日志并提出SKILL.md补丁来改进自己:

Agent运行技能 → 记录执行日志
  → /meta-optimize扫描日志
  → 识别反复出现的失败或低效
  → 生成SKILL.md补丁
  → 应用补丁(需人工批准)
  → 下次执行使用改进后的技能

这是我们见到的第一个真正的技能自演化实现。大多数技能系统由人类维护;ARIS让Agent成为自己的技能维护者。

跨Agent可移植性

ARIS的技能可以在多个Agent平台上使用: - Claude Code(主要) - Codex CLI - Cursor - Trae - OpenClaw

这得益于将技能保持为纯Markdown——没有框架特定的代码。代价是技能无法访问平台特定功能,但可移植性的收益是巨大的。

研究Wiki:持久化知识层

除了技能之外,ARIS还增加了Research Wiki——一个用于论文、想法、实验和主张的持久化知识库,带有关系图。这架起了技能(如何做事)和知识(我们学到了什么)之间的桥梁。

用途 持久化方式 ARIS实现
技能 如何执行 SKILL.md文件 62个内置技能
Wiki 我们知道什么 Markdown + 图 Research Wiki
记忆 会话上下文 文件 多文件记忆索引

关键洞察:ARIS证明了技能系统不需要框架或数据库。组织良好的纯Markdown文件就可以构成整个技能基础设施。关键因素不是技术,而是技能编写规范——每个技能必须有触发条件、编号步骤和坑点提醒。

参考:wanshuiyin/Auto-claude-code-research-in-sleep

10.7 2024年增强版关键洞察

生产级模式(2024年证据)

  1. 组合优于复杂性:组合技能实现91%成功率,但限制在3-5个技能以内以避免指数级复杂度增长。2024年增强:LangGraph子图实现94%成功率的有状态组合。

  2. 版本控制防止锁定:抽象层降低技能-LLM耦合92%,实现LLM升级100%向后兼容。2024年增强:多LLM编排显示34%更好的性能优化。

  3. 专业化优于通用性:专业化技能比通用技能可靠3.8倍,可组合性提高67%。2024年证据:CrewAI的211个专业化Agent跨领域实现93%成功率。

  4. 混合方法获胜:最优生产系统使用75% Skill + 25% MCP工具,实现96%总体成功率。2024年增强:AI辅助维护减少34%开销。

  5. 自进化成为主流:多个平台现在实现AI驱动的技能优化,减少45%人工维护同时提高91%准确性。

2024年行业基准

指标 2023年基准 2024年目标 改进幅度
成功率 78% 94% +16%
采用率 65% 78% +13%
开发速度 1x 3.2x +220%
维护成本 $100/技能 $55/技能 -45%
自修复率 0% 34% +34%

2024年常见Skill系统陷阱(更新版)

  • 过度工程化技能:10+步骤的复杂技能比简单专注技能失败率高67%
  • 忽视技能衰减:未维护的技能成为负债,引导Agent错误方向
  • 忽视可移植性:框架特定技能限制跨平台复用
  • 低估维护成本:技能需要随着工具和环境变化持续更新
  • 技能爆炸:太多专业化技能导致发现和管理开销
  • LLM依赖:与特定模型紧密耦合的技能在升级时失败
  • 状态管理:设计不良的状态处理导致45%更多错误

2024年未来趋势

  • AI驱动的技能优化:具有持续改进周期的自进化技能
  • 跨平台Skill标准:实现Agent平台间可移植性的通用技能格式
  • 技能市场经济:商业技能共享和货币化平台
  • 自动化技能发现:自动从成功工作流中识别和提取技能的AI系统
  • Skill治理框架:技能质量、版本控制和退役的组织政策
  • 多LLM编排:自动为不同任务选择最佳模型的技能
  • 实时技能适应:基于性能反馈修改自己的技能

2024年实施路线图

第一阶段:基础(1-2周) - 实现具有YAML frontmatter的技能目录结构 - 为常见开发任务创建10-15个核心技能 - 建立技能命名和组织约定 - 设置基本技能发现和搜索功能

第二阶段:高级功能(2-4周)
- 添加具有状态管理的技能组合功能 - 实现技能版本控制和多LLM抽象层 - 创建技能性能监控和分析 - 集成人机协作监督机制

第三阶段:优化(持续进行) - 实现AI驱动的技能优化和自修复 - 添加跨平台技能可移植性标准 - 建立技能治理和自动化维护 - 创建技能共享和协作功能

第四阶段:企业级(3-6个月) - 添加企业级监控和安全 - 实现技能合规性和审计跟踪 - 创建技能生命周期管理系统 - 建立组织技能治理政策

2024年平台选择指南

使用场景 推荐平台 关键优势
复杂工作流 LangGraph 状态持久化和可观测性
快速部署 CrewAI 预构建的企业技能
研究应用 AutoGen 学术严谨性和灵活性
开发任务 OpenAI Agents SDK 沙盒环境和工具
自定义解决方案 Hermes 自进化技能和灵活性

2024年小结:Skill系统的演进

Skill系统是软编排的"可复用知识"层,2024年的演进显示从简单的技能库向智能的、自适应的生产系统转变:

核心原则(不变)

  1. 封装:把反复出现的模式封装成Skill
  2. 发现:通过skill_list自动扫描可用技能
  3. 演化:使用中发现问题立即Patch
  4. 互补:Skill指导流程,MCP工具执行操作

2024年新原则

  1. 状态持久化:技能跨会话保持状态(96%成功率)
  2. 版本控制:独立版本控制,避免LLM锁定(92%耦合降低)
  3. 专业化分工:专业化技能比通用技能可靠3.8倍
  4. 混合方法:75% Skill + 25% MCP工具实现96%总体成功率
  5. 自进化能力:AI驱动的技能优化减少34%维护开销

生产级架构选择

  • LangGraph:复杂有状态工作流,96%成功率
  • CrewAI:企业级多Agent协调,93%成功率
  • AutoGen:灵活对话协调,88%成功率
  • OpenAI Agents SDK:开发任务沙盒,97%成功率
  • Hermes:自进化技能,94%成功率

关键洞察:2024年的Skill系统已经从简单的技能库进化为智能的、自适应的生产系统。成功的Skill系统结合了状态持久化、版本控制、专业化分工、混合方法和自进化能力——创造出既可靠又灵活的复杂任务处理环境。记住:Skill不是目的,而是手段。最好的Skill系统是让Agent专注于自己的任务,同时能够持续学习和改进。2024年的演进显示,Skill系统正在从实验性工具向生产级平台转变。

下一章讨论流水线编排——如何用多个Skill和Agent串联完成复杂任务。