Phase 3 · 上下文与技能

规范 - 智能体技能

Agent Skills·2026/7/21·8 阅读

规范 - 智能体技能

来源: https://agentskills.io/specification 抓取时间: 2026-07-21 16:19:13


本页内容

  • 目录结构
  • SKILL.md 格式
    • 前言
    • name 字段
    • description 字段
    • license 字段
    • compatibility 字段
    • metadata 字段
    • allowed-tools 字段
    • 主体内容
  • 可选目录
    • scripts/
    • references/
    • assets/
  • 渐进式披露
  • 文件引用
  • 验证

规范

完整的智能体技能格式规范。

目录结构

技能是一个目录,至少包含一个 SKILL.md 文件:

skill-name/
├── SKILL.md          # 必需:元数据 + 指令
├── scripts/          # 可选:可执行代码
├── references/       # 可选:文档
├── assets/           # 可选:模板、资源
└── ...               # 任何额外的文件或目录

SKILL.md 格式

SKILL.md 文件必须包含 YAML 前言,后跟 Markdown 内容。

前言

字段必需约束
name最多 64 个字符。只能是小写字母、数字和连字符。不能以连字符开头或结尾。
description最多 1024 个字符。非空。描述技能的功能和使用时机。
license许可证名称或对捆绑许可证文件的引用。
compatibility最多 500 个字符。指示环境要求(预期产品、系统包、网络访问等)。
metadata用于额外元数据的任意键值映射。
allowed-tools技能可以使用的预批准工具的空格分隔字符串。(实验性)

最小示例: SKILL.md

---
name: skill-name
description: 描述该技能的功能和使用时机。
---

带有可选字段的示例: SKILL.md

---
name: pdf-processing
description: 提取 PDF 文本、填写表单、合并文件。在处理 PDF 时使用。
license: Apache-2.0
metadata:
  author: example-org
  version: "1.0"
---

name 字段

必需的 name 字段:

  • 必须是 1-64 个字符
  • 只能包含 Unicode 小写字母数字字符(a-z0-9)和连字符(-
  • 不能以连字符(-)开头或结尾
  • 不能包含连续连字符(--
  • 必须与父目录名称匹配

有效示例:

name: pdf-processing
name: data-analysis
name: code-review

无效示例:

name: PDF-Processing  # 不允许大写
name: -pdf  # 不能以连字符开头
name: pdf--processing  # 不允许连续连字符

description 字段

必需的 description 字段:

  • 必须是 1-1024 个字符
  • 应该描述技能的功能和使用时机
  • 应该包含帮助智能体识别相关任务的特定关键词

好的示例:

description: 从 PDF 文件中提取文本和表格,填写 PDF 表单,并合并多个 PDF。在处理 PDF 文档或用户提到 PDF、表单或文档提取时使用。

差的示例:

description: 帮助处理 PDF。

license 字段

可选的 license 字段:

  • 指定应用于技能的许可证
  • 我们建议保持简短(许可证名称或许可证文件的名称)

示例:

license: 专有。LICENSE.txt 包含完整条款

compatibility 字段

可选的 compatibility 字段:

  • 如果提供,必须是 1-500 个字符
  • 只有当你的技能有特定的环境要求时才应该包含
  • 可以指示预期产品、所需系统包、网络访问需求等

示例:

compatibility: 专为 Claude Code(或类似产品)设计
compatibility: 需要 git、docker、jq 和互联网访问
compatibility: 需要 Python 3.14+ 和 uv

大多数技能不需要 compatibility 字段。

metadata 字段

可选的 metadata 字段:

  • 从字符串键到字符串值的映射
  • 客户端可以使用它来存储智能体技能规范未定义的额外属性
  • 我们建议使你的键名合理唯一,以避免意外冲突

示例:

metadata:
  author: example-org
  version: "1.0"

allowed-tools 字段

可选的 allowed-tools 字段:

  • 预批准运行的工具的空格分隔字符串
  • 实验性的。对该字段的支持可能因智能体实现而异

示例:

allowed-tools: Bash(git:*) Bash(jq:*) Read

主体内容

前言后的 Markdown 主体包含技能指令。没有格式限制。写任何能帮助智能体有效执行任务的内容。推荐部分:

  • 分步说明
  • 输入和输出示例
  • 常见边缘情况

请注意,一旦智能体决定激活技能,它将加载整个文件。考虑将较长的 SKILL.md 内容拆分为引用文件。

可选目录

scripts/

包含智能体可以运行的可执行代码。脚本应:

  • 自包含或清楚地记录依赖关系
  • 包含有用的错误消息
  • 优雅地处理边缘情况

支持的语言取决于智能体实现。常见选项包括 Python、Bash 和 JavaScript。

references/

包含智能体在需要时可以阅读的额外文档:

  • REFERENCE.md - 详细技术参考
  • FORMS.md - 表单模板或结构化数据格式
  • 特定领域文件(finance.mdlegal.md 等)

保持各个参考文件的重点。智能体按需加载这些文件,因此较小的文件意味着更少的上下文使用。

assets/

包含静态资源:

  • 模板(文档模板、配置模板)
  • 图像(图表、示例)
  • 数据文件(查找表、模式)

渐进式披露

智能体渐进式加载技能,仅在任务需要时引入更多细节。技能应结构化以利用这一点:

  1. 元数据(约 100 个令牌):namedescription 字段在启动时为所有技能加载
  2. 指令(建议 < 5000 个令牌):技能激活时加载完整的 SKILL.md 主体
  3. 资源(按需):文件(例如 scripts/references/assets/ 中的文件)仅在需要时加载

保持你的主要 SKILL.md 低于 500 行。将详细的参考材料移到单独的文件中。

文件引用

在引用你技能中的其他文件时,使用从技能根目录的相对路径: SKILL.md

详见[参考指南](references/REFERENCE.md)。

运行提取脚本:
scripts/extract.py

保持文件引用从 SKILL.md 开始只有一层深。避免深度嵌套的引用链。

验证

使用 skills-ref 参考库来验证你的技能:

skills-ref validate ./my-skill

这会检查你的 SKILL.md 前言是否有效并遵循所有命名约定。 概述客户端展示 ⌘I

评论 (0)

暂无评论,快来抢沙发吧!

91学AI

© 2026 91学AI · 按岗位学 AI 与大数据. All rights reserved.