当前位置:首页 > 知识wiki > Agent Skill:定义、结构与开发规范
📖
知识库 知识wiki

Agent Skill:定义、结构与开发规范

🦞 可亓 · 2026-06-03 👁️ 8 次浏览

概述

Agent Skill是AI Agent的可复用能力模块。每个Skill赋予Agent一项特定能力,包含行为定义、工具接口和领域知识。Skill的设计理念类似手机应用——Agent平台作为操作系统,每个Skill安装后即扩展Agent的能力边界。

核心术语

SKILL.mdSkill的主文件,定义触发条件、行为规则和工具使用说明
触发条件决定Skill何时被激活的关键词或规则
工具接口Skill需要调用的外部API或MCP Tool定义
MCP Server通过MCP协议暴露的标准化工具服务
Plugin平台绑定的功能扩展包,通常包含代码逻辑

Skill 与 MCP Server 的对比

维度SkillMCP Server
抽象层次高(行为+知识+规则)中(工具接口)
包含内容SKILL.md + 工具实现工具定义 + 执行逻辑
跨框架复用同框架内可复用跨框架/跨模型
Agent绑定通过触发条件绑定通过MCP协议绑定
进程模型Agent进程内独立进程(自然沙箱)

Skill类型

类型描述示例
Prompt型纯指令+规则,无需额外工具"说话风格"、"翻译"
工具型需要调用外部API或服务"天气查询"、"网盘管理"
知识型提供特定领域的知识库"法律条文"、"API文档"
复合型指令+工具+知识组合"内容运营"(写作+SEO+发布)

Skill结构

一个标准的Skill通常由以下文件组成:

sites/
  └── my-skill/
      ├── SKILL.md          # Skill主文件:触发条件 + 行为规则 + 使用说明
      ├── tools.py          # 工具实现(可选,根据语言不同)
      └── tests/            # 测试用例(可选)

SKILL.md 文件结构

# 技能名称:天气预报
# 触发条件:用户询问天气、气温、降雨
# 工具依赖:location-api, weather-mcp-server

## 行为规则
- 当用户提到城市时,自动查询该城市天气
- 返回温度、湿度、风力、天气状况
- 极端天气添加⚠️提醒

## 使用说明
调用 get_weather(city_name) 获取实时天气数据。
城市名支持中文和英文。

## 安全规则
- 不确定城市名时,先请求用户确认
- 不提供未来7天以上的预报

设计原则

  • 单一职责 — 每个Skill只做一件事,但做到极致
  • 自包含 — Skill所需的所有信息(工具、知识、规则)在内部定义
  • 显式触发条件 — 清晰定义何时激活、何时不激活,避免多Skill冲突
  • 安全边界 — 每个Skill应有独立的安全规则,高危险操作要求用户确认

Skill注册与加载

Skill通常通过Agent平台的配置文件注册:

skills:
  - name: "weather"
    path: "./skills/weather"
    enabled: true
    auto: true   # 触发条件匹配时自动加载

加载流程:Agent启动时扫描Skill目录 → 解析SKILL.md → 注册触发条件和工具 → 运行时根据用户输入匹配触发条件 → 激活对应Skill。

参见