agentskills.io 规范

1037 字
5 分钟
agentskills.io 规范

1. SKILL.md 格式#

如上一节 skill 入门 所说,SKILL.md 的开头包含一段元数据,关于元数据字段的完整指南如下:

字段是否必须要求
nameYes最多 64 个字符,只允许:小写字母、数字和连字符;不能以连字符开头或结尾
descriptionYes最多 1024 个字符;非空;描述这个 skill 是做什么的,以及何时调用
licenseNo列出许可证名或捆绑的许可证文件
compatiabilityNo最多 500 字符;声明这个 skill 运行时需要什么环境
metadataNo关于附加元数据的任意值映射
allowed-toolsNo用空格分隔的字符串;描述允许该 skill 使用的工具

下面是一个 skill 的最小示例:

---
name: skill-name
description: A description of what this skill does and when to use it.
---

下面是关于可选字段的一个示例:

---
name: pdf-processing
description: Extract PDF text, fill forms, merge files. Use when handling PDFs.
license: Apache-2.0
metadata:
author: example-org
version: "1.0"
---

1.1 字段的详细要求#

name 字段:

  • 必须为 1-64 个字符;
  • 只能包含:a-z, 0-9, -
  • 不能以 - 开头或结尾;
  • 不能包含连续的连字符 --
  • 必须与 parent directory name 保持一致。

description 字段:

  • 必须为 1-1024 个字符;
  • 应该同时描述:
    • 这个 skill 是做什么的;
    • 什么时候该调用它;
  • 应该包含特定的关键词,帮助 Agent 识别相关的任务。

license 字段示例:

license: Proprietary. LICENSE.txt has complete terms

compatiability 字段:

  • 大多数 skill 不需要该字段,仅当 skill 有特定环境要求的时候才应包含。

metadata 字段:

  • 包含从字符串键到字符串值的映射;
  • 客户端可以用该字段存储 agentskills.io 规范未定义的其他属性;
  • 建议使用相对唯一的键名,以免冲突。
metadata:
author: example-org
version: "1.0"

allowed-tools 字段:

  • 以空格分隔的字符串,列出预先批准可运行的工具;
  • 实验性功能,不同 Agent 对该字段的支持可能不同。
allowed-tools: Bash(git:*) Bash(jq:*) Read

1.2 正文内容#

前置元数据之后的 Markdown 正文包含技能指令。没有格式限制。编写任何有助于代理有效执行任务的内容。

建议包含的部分:

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

请注意,一旦代理决定激活技能,它将加载整个 SKILL.md 文件。如果内容较长,建议将部分内容拆分到引用的文件中。

2. 可选目录#

2.1 scripts/#

包含代理可以运行的可执行代码。脚本应:

  • 自包含或清楚说明依赖项
  • 包含有用的错误信息
  • 优雅地处理边缘情况

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

2.2 references/#

包含代理在需要时可读取的附加文档:

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

保持每个参考文件内容聚焦。代理按需加载这些文件,文件越小,占用的上下文就越少。

2.3 assets/#

包含静态资源:

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

3. 渐进式披露#

代理逐步加载技能,仅在任务需要时才拉取更多细节。技能结构应充分利用这一点:

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

建议将主 SKILL.md 控制在 500 行以内。将详细的参考材料移到单独的文件中。

3.1 文件引用#

在技能中引用其他文件时,请使用相对于技能根目录的路径:

See [the reference guide](references/REFERENCE.md) for details.
Run the extraction script:
scripts/extract.py

请保持从 SKILL.md 出发的文件引用深度不超过一层。避免深层嵌套的引用链。

3.2 验证#

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

Terminal window
skills-ref validate ./my-skill

该命令会检查你的 SKILL.md 前置元数据是否有效,并遵循所有命名约定。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

agentskills.io 规范
https://agentskills.io/home
作者
HAC
发布于
2026-07-07
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
HAC
观之非易,行且克难
Greetings
欢迎来到我的博客!这里主要分享我的学习笔记与兴趣爱好。
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
标签
站点统计
文章
32
分类
5
标签
13
总字数
79,889
运行时长
0
最后活动
0 天前

文章目录