AI小栈AI小栈
首页
  • 模块概览
  • Transformer 与注意力机制
  • 主流大模型对比
  • Prompt Engineering
  • Token 与成本核算
  • Function Calling
  • 模块概览
  • Agent 范式
  • 多 Agent 协作
  • 记忆系统
  • 规划与推理
  • 安全与可控性
  • 模块概览
  • LangChain / LangGraph
  • Claude Agent SDK
  • OpenAI Agents SDK
  • AutoGen / CrewAI
  • Dify / Coze
  • MCP 协议
  • 模块概览
  • RAG 工程化
  • 工具设计与封装
  • 流式输出与 UX
  • 可观测性
  • 部署与成本优化
  • 测试与评估
  • 模块概览
  • 智能编程助手
  • 知识库问答 Agent
  • 数据分析 Agent
  • 多模态 Agent
  • 运维 Agent
  • 从0到1构建
  • 模块概览
  • 论文解读
  • 开源项目追踪
  • MCP 生态
  • Agent 商业化
  • 职业路径
  • 模块概览
  • 技术面试实战
  • Agent 面试题解析
  • 项目经验包装
  • 流程与心态准备
首页
  • 模块概览
  • Transformer 与注意力机制
  • 主流大模型对比
  • Prompt Engineering
  • Token 与成本核算
  • Function Calling
  • 模块概览
  • Agent 范式
  • 多 Agent 协作
  • 记忆系统
  • 规划与推理
  • 安全与可控性
  • 模块概览
  • LangChain / LangGraph
  • Claude Agent SDK
  • OpenAI Agents SDK
  • AutoGen / CrewAI
  • Dify / Coze
  • MCP 协议
  • 模块概览
  • RAG 工程化
  • 工具设计与封装
  • 流式输出与 UX
  • 可观测性
  • 部署与成本优化
  • 测试与评估
  • 模块概览
  • 智能编程助手
  • 知识库问答 Agent
  • 数据分析 Agent
  • 多模态 Agent
  • 运维 Agent
  • 从0到1构建
  • 模块概览
  • 论文解读
  • 开源项目追踪
  • MCP 生态
  • Agent 商业化
  • 职业路径
  • 模块概览
  • 技术面试实战
  • Agent 面试题解析
  • 项目经验包装
  • 流程与心态准备
  • Agent 开发框架

    • 模块概览
    • LangChain 与 LangGraph
    • Claude Agent SDK 与 Anthropic API
    • OpenAI Agents SDK
    • AutoGen 与 CrewAI
    • Dify 与 Coze 低代码 Agent 平台
    • MCP 协议详解
    • 大模型 Skill 系统

大模型 Skill 系统

2026 年,Agent 开发范式正在从"围绕模型写代码"转向"围绕 Skill 组装能力"。Skill(技能)是可独立定义、动态加载、组合复用的能力单元——它让 Agent 无需重新训练就能掌握新能力,也让开发者像搭积木一样构建复杂应用。本章系统讲解 Skill 的架构设计、获取方法、生态治理与工程实践。

什么是 Skill

Skill 是 Agent 与外部世界交互的模块化能力包。与早期 Function Calling 中零散的工具定义不同,Skill 包含完整的语义描述、输入输出规范、执行逻辑、错误处理策略和安全边界——它是一个自包含的、可独立分发和安装的能力模块。

Skill vs Tool vs MCP Server

维度Tool(工具)MCP ServerSkill(技能)
粒度单个函数调用一组工具+资源完整业务流程
语义仅名称和参数描述协议标准化接口自然语言能力描述
状态无状态可维护会话状态可维护内部状态与记忆
组合性需外部编排需外部编排支持 Skill 嵌套与组合
示例get_weather(city)天气查询服务"旅行规划助手"(含航班+酒店+天气)

核心洞察:Tool 是"原子操作",MCP Server 是"工具集合",而 Skill 是"完整能力"——它知道何时调用哪些工具、如何处理中间结果、如何在失败时降级。

Skill 架构设计

Skill 系统架构图

一个标准的 Skill 包含四个核心组件:

1. SKILL.md 规范

skill:
  name: travel_planner
  version: 1.2.0
  description: |
    根据用户预算和偏好,规划完整旅行行程。
    能力包括:航班搜索、酒店预订、景点推荐、天气查询。
  capabilities:
    - flight_search
    - hotel_booking
    - attraction_recommendation
    - weather_query
  input_schema:
    destination: string
    budget: number
    dates:
      start: date
      end: date
    preferences:
      hotel_stars: number
      transport_type: [flight, train, bus]
  output_schema:
    itinerary: array
    total_cost: number
    booking_links: array
  safety:
    max_budget_limit: 50000
    required_confirmations: [hotel_booking, flight_booking]
    blocked_destinations: ["restricted_area_1"]

SKILL.md 的设计遵循渐进式披露原则——模型首先读取高层描述判断是否需要该 Skill,只有在确认需要时才加载完整的参数规范和执行逻辑。

2. 执行引擎

Skill 的执行引擎负责:

  • 意图匹配:根据用户请求判断该 Skill 是否适用
  • 参数填充:从对话上下文中提取并验证输入参数
  • 编排执行:按预设流程调用底层工具或子 Skill
  • 结果封装:将原始工具返回转换为符合 output_schema 的结构化输出
class SkillExecutor:
    def __init__(self, skill_spec):
        self.spec = skill_spec
        self.sub_skills = {}  # 嵌套 Skill 注册表
        self.tools = {}       # 底层工具注册表

    async def execute(self, context, user_input):
        # 1. 意图匹配
        if not self._is_applicable(user_input):
            return None

        # 2. 参数提取与验证
        params = self._extract_params(context, user_input)
        self._validate(params)

        # 3. 执行编排
        result = await self._orchestrate(params)

        # 4. 结果封装
        return self._format_output(result)

3. 记忆与状态

复杂 Skill 需要维护内部状态。例如"多轮谈判 Skill"需要记住:

  • 当前谈判轮次
  • 已提出的条件
  • 对方的让步历史
  • 己方的底线约束

这种状态存储在 Skill 的私有上下文中,与 Agent 的全局上下文隔离,避免不同 Skill 之间的状态污染。

4. 安全沙箱

每个 Skill 运行在独立的安全沙箱中:

  • 权限边界:明确规定该 Skill 能访问哪些 API、能修改哪些数据
  • 资源限额:CPU 时间、内存、API 调用次数上限
  • 审计日志:记录 Skill 的所有输入输出和工具调用
  • 熔断机制:连续失败时自动停用该 Skill

Skill 获取方法

Agent 获得 Skill 的途径主要有三种:

1. 强化学习训练

通过 RL 让模型在特定任务上习得 Skill。典型流程:

  1. 定义任务环境(如"网页操作环境")
  2. 设计奖励函数(任务完成度、效率、安全性)
  3. 模型通过试错学习最优策略
  4. 将学得的策略封装为可复用 Skill

优势:Skill 质量高、针对性强。 局限:训练成本高、泛化能力依赖环境设计。

2. 自主 Skill 发现

模型通过观察自身成功解决问题的模式,自动提炼为 Skill。代表方法 SEAgent:

  1. 记录 Agent 解决复杂任务的完整轨迹
  2. 识别可复用的子流程(如"先搜索再验证再总结")
  3. 将子流程抽象为参数化 Skill
  4. 存储到 Skill 库供未来调用

优势:无需人工标注、持续自我进化。 局限:初期发现的 Skill 质量不稳定、需要人工审核。

3. 组合式 Skill 合成

通过组合已有 Skill 构建更复杂的能力:

基础 Skill: [搜索, 计算, 绘图]
组合 Skill: 数据分析 = 搜索(获取数据) → 计算(统计分析) → 绘图(可视化)

这种组合遵循约束一致性原则——确保组合后的 Skill 在各环节的状态约束、权限边界和输出格式相互兼容。

Skill 生态系统与信任治理

2026 年的 Skill 生态呈现出"社区贡献 + 平台审核 + 用户投票"的三层治理结构。

社区贡献现状

数据显示,社区贡献的 Skill 中26.1% 包含安全漏洞——常见的漏洞类型包括:

  • Prompt 注入:Skill 描述或参数描述中存在可注入的模板
  • 权限越界:声称只读却包含写入操作
  • 数据泄露:将用户输入发送到第三方未声明的 API
  • 资源耗尽:缺少调用频率限制,可能导致 DoS

四层信任治理框架

层级机制作用
L1 静态扫描自动化漏洞检测、代码审计拦截 obvious 漏洞
L2 沙箱测试在隔离环境中运行 100+ 测试用例验证行为符合声明
L3 社区审核多轮人工审核 + 同行评议评估 Skill 质量与安全性
L4 运行时监控生产环境行为追踪、异常检测发现声明中未暴露的风险

Skill 市场与版本管理

成熟的 Skill 生态需要:

  • 版本语义化:遵循 SemVer,重大变更需显式标注
  • 依赖管理:Skill A 依赖 Skill B 时,自动解析兼容版本
  • 评分系统:基于使用量、成功率、用户满意度综合评分
  • 淘汰机制:长期未维护或评分过低的 Skill 自动归档

Skill 与 MCP 的关系

Skill 和 MCP 是互补而非竞争的关系:

  • MCP 解决"连接"问题:标准化 Agent 与外部工具/数据源的通信协议
  • Skill 解决"能力"问题:封装完整的业务流程和决策逻辑

类比:MCP 是 USB 接口标准,Skill 是插在上面的外设驱动程序——接口让设备能连上电脑,驱动程序让设备能真正工作。

在工程实践中,一个 Skill 通常内部使用 MCP 来连接底层工具:

用户请求 → Skill(业务逻辑 + 状态管理)
              ↓
          MCP Client
              ↓
          MCP Server(工具执行)
              ↓
          结果返回 → Skill 处理 → 用户

工程实践建议

  1. 从简单 Skill 开始:先封装单一、高频、边界清晰的能力,再逐步组合复杂 Skill
  2. SKILL.md 即契约:投入时间写好 Skill 描述——模型通过描述理解何时使用该 Skill,描述质量直接决定调用准确率
  3. 防御性设计:假设 Skill 会被误用,在内部做好参数校验、权限检查、异常处理
  4. 可观测性优先:Skill 的每次调用都记录完整轨迹,便于调试和优化
  5. 版本兼容:升级 Skill 时保持向后兼容,或提供明确的迁移指南

本章小结

维度核心要点
Skill 定义模块化、自包含、可组合的能力包,区别于零散 Tool
架构组件SKILL.md 规范 + 执行引擎 + 记忆状态 + 安全沙箱
获取方法强化学习训练、自主发现、组合合成
生态治理四层信任框架(静态扫描→沙箱测试→社区审核→运行时监控)
与 MCP 关系MCP 是连接层,Skill 是能力层,Skill 内部通常使用 MCP

📖 延伸阅读

  1. Agent Skills for Large Language Models —— Skill 架构与生态综述原论文
  2. SEAgent: Self-Evolving Agents —— 自主 Skill 发现方法
  3. Skill Composition for LLM Agents —— 组合式 Skill 合成研究
  4. MCP Protocol —— Skill 生态的底层连接标准

Prev
MCP 协议详解