什么是 Skills?
从本质上讲,技能是一个包含 SKILL.md 文件的文件夹。该文件包含元数据(至少包含 name 和 description)以及告诉智能体如何执行特定任务的指令。技能还可以包含脚本、模板和参考材料。
txt
my-skill/
├── SKILL.md # 必需:指令 + 元数据
├── scripts/ # 可选:可执行代码
├── references/ # 可选:文档
└── assets/ # 可选:模板、资源技能如何工作
技能使用渐进式披露来高效管理上下文:
发现:在启动时,智能体仅加载每个可用技能的名称和描述,这些信息足以让智能体知道何时可能相关。
激活:当任务与技能描述匹配时,智能体会将完整的
SKILL.md指令读入上下文。执行:智能体按照指令执行,根据需要加载引用的文件或执行捆绑的代码。
这种方法保持了智能体的速度,同时让它们能够根据需要访问更多上下文。
SKILL.md 文件
每个技能都以包含 YAML 前置元数据和 Markdown 指令的 SKILL.md 文件开始:
mdx
---
name: pdf-processing
description: 从 PDF 文件中提取文本和表格,填写表单,合并文档。
---
# PDF 处理
## 何时使用此技能
当用户需要处理 PDF 文件时使用此技能...
## 如何提取文本
1. 使用 pdfplumber 进行文本提取...
## 如何填写表单
...SKILL.md 顶部需要以下前置元数据:
name:简短标识符description:何时使用此技能
Markdown 正文包含实际指令,对结构或内容没有特定限制。
这种简单格式具有一些关键优势:
自我文档化:技能作者或用户可以阅读
SKILL.md并理解其功能,使技能易于审计和改进。可扩展:技能的复杂性可以从简单的文本指令到可执行代码、资产和模板不等。
可移植:技能只是文件,因此易于编辑、版本控制和共享。
后续步骤
- 查看规范 以了解完整格式。
- 为您的智能体添加技能支持 以构建兼容的客户端。
- 在 GitHub 上查看示例技能。
- 阅读编写最佳实践 以编写有效的技能。
- 使用参考库 来验证技能并生成提示 XML。