Skill Maker 用于引导智能体创建符合 agentskills.io 规范的技能。技能是一个目录,其中包含带有 YAML frontmatter 和 Markdown 指令的 SKILL.md 文件,用于以专门知识、工作流和捆绑资源扩展智能体能力。
用途
Skill Maker 面向需要创建新技能的智能体或用户,提供从需求收集到最终校验的结构化工作流。当用户要求“create a skill”“make a…”等操作时,应使用该技能。
主要能力
Skill Maker 将技能创建过程划分为四个阶段,需按顺序执行。
第一阶段:需求收集。在编写任何代码之前,先理解技能需要完成的任务。通过交互式问题收集:技能所支持的任务或工作流、具体使用示例(用户会怎么说)、所需资源(脚本、参考、资产)、用于描述部分的触发短语。
第二阶段:规划。在收集需求后,规划技能结构:选择名称(小写、连字符、最多 64 字符、与文件夹一致);起草描述(做什么 + 何时使用 + 关键词,最多 1024 字符);决定需要哪些可选目录:scripts/ 用于重复性或确定性任务的可执行代码,references/ 用于按需加载的文档,assets/ 用于输出所需的模板、图像、数据文件;概述 SKILL.md 正文各节。可使用 assets/planning-template.md 进行结构化规划。
第三阶段:脚手架搭建。使用脚手架脚本创建技能结构:
deno run --allow-write --allow-read scripts/scaffold.ts
--name "my-skill"
--description "What this skill does and when to use it."
--path "./skills/domain/"
--with-scripts
--with-references
该命令会创建 my-skill/ 目录,其中包含 SKILL.md(带 frontmatter 的起始模板),以及可选的 scripts/ 和 references/ 目录。随后编辑生成的 SKILL.md 以添加指令。
第四阶段:校验。校验完成的技能:
deno run --allow-read --allow-run scripts/validate-skill.ts ./path/to/skill
校验器检查:frontmatter 有效性(名称、描述约束)、名称与目录名一致、行数(超过 500 行时警告)、被引用的文件是否存在、描述是否包含触发短语。修复问题后重新校验。
使用方式
快速开始:创建目录 mkdir -p skills/domain/my-skill;复制模板 cp assets/skill-md-template.md skills/domain/my-skill/SKILL.md;编辑 SKILL.md 的 frontmatter 和正文;校验 deno run --allow-read --allow-run scripts/validate-skill.ts ./skills/domain/my-skill。
交互式需求收集:当用户请求新技能时,询问以下问题。理解任务:“这个技能应支持什么任务或工作流?”“能否给出 2-3 个具体使用示例?”“用户会说什么话来触发这个技能?”识别资源:“这个技能是否需要用于重复任务的可执行脚本?”“是否有应包含的参考文档?”“是否有技能产出输出所需的模板或资产?”定义范围:“这个技能不应处理什么?(超出范围)”“是否有应连接的相关技能?”起草描述:根据收集的信息,按以下模式起草描述:“[技能做什么]。当用户要求 [触发短语 1]、[触发短语 2]、[触发短语 3] 或 [场景] 时,应使用此技能。关键词:[相关术语]。”
关键原则
渐进式披露:为高效使用上下文而组织技能。元数据(name + description)约 100 tokens,始终加载;指令(SKILL.md 正文)少于 5000 tokens,激活时加载;资源(scripts/、references/、assets/)按需加载。保持 SKILL.md 少于 500 行,将详细内容移至 references/。
强触发描述:以第三人称和具体短语编写描述。示例(好):description: "This skill should be used when the user asks to 'create a PDF', 'extract text from PDF', 'merge PDFs', or mentions PDF processing." 示例(差):description: "Helps with PDFs."
祈使式写作风格:以祈使形式编写指令,而非第二人称。示例(好):Run the validation script before committing changes. Configure the API key in the environment. 示例(差):You should run the validation script. You need to configure the API key.
脚本参考
scaffold.ts:创建技能文件夹结构和起始文件。
deno run --allow-write --allow-read scripts/scaffold.ts
--name "skill-name"
--description "Description text"
--path "./target/directory/"
[--with-scripts] [--with-references] [--with-assets]
选项:--name(必填)技能名称(校验格式);--description(必填)初始描述;--path(必填)技能的父目录;--with-scripts 创建 scripts/ 目录;--with-references 创建 references/ 目录;--with-assets 创建 assets/ 目录。
validate-skill.ts:根据 agentskills.io 规范校验技能。
deno run --allow-read --allow-run scripts/validate-skill.ts ./path/to/skill
执行超出基本规范的检查:如果可用则调用 skills-ref validate;对大型文件(超过 500 行)发出警告;检查被引用文件是否存在;检测第二人称语言模式。
附加资源
参考文件:references/spec-quick-reference.md(精简版 agentskills.io 规范)、references/progressive-disclosure.md(内容组织策略)、references/examples-gallery.md(结构良好的技能注释示例)。
资产文件:assets/skill-md-template.md(完整的 SKILL.md 起始模板)、assets/planning-template.md(需求收集工作表)。
外部资源:agentskills.io 规范、skills-ref 校验工具。
适用场景
适用于需要创建符合 agentskills.io 规范的新技能时,包括需求收集、结构规划、脚手架生成和校验。
限制
资料未提供关于收费、价格、平台支持范围或具体效果的信息。