如何写出你的第一个特工技能 笔记

如何写出你的第一个特工技能

本文阐述了 AI 编程代理中“技能(skills)”的概念,其本质是结构化的指令集。这些技能旨在解决 AI 代理在连续会话中遗忘指令的问题。一个技能被定义为一个文件夹,其中包含一个名为 SKILL.md 的单一文件。该文件由两部分组成:YAML 前置元数据(frontmatter)和 Markdown 正文。YAML 前置元数据包含“名称(name)”和“描述(description)”。描述至关重要,因为它充当代理的触发器,告知代理在何种情况下该技能与用户的请求相关。Markdown 正文包含技能的实际指令,包括工作流、规则和一个示例。正文应为纯 Markdown 格式,除前置元数据外,不包含任何代码或配置。随后,本文通过一个名为“teardown"的提交信息(commit-message)技能示例来阐释这一概念。该技能的前置元数据清晰地定义了其目的和触发条件。工作流概述了生成提交信息的五步流程,并包含停止条件。规则用于强制执行判断决策,例如将主题(subject)与正文(body)的目的分开,并避免元评论(meta-commentary)。示例展示了预期的输出结果,而反模式(anti-patterns)则突出了需要避免的常见失败模式。本文强调,技能的每个部分都有其特定用途:描述用于触发,步骤用于执行顺序,规则用于判断,示例用于格式规范,反模式用于拒绝场景。要创建新技能,应首先撰写描述,然后编写带有停止条件的编号工作流步骤,接着是判断性规则,再是具体示例,最后是明确的反模式。核心原则是保持技能简洁且专注,仅在规则被实际使用时才包含它们。技能通过将其文件夹放置到代理的技能目录中进行部署,之后代理将基于其描述自动识别并使用这些技能。本文还提供了一个链接,指向包含预制的、采用 MIT 许可证的技能仓库,涵盖提交信息、代码审查、会议纪要、技术校对和结构化研究等领域。技能的基础结构是稳定的,允许用户根据特定工作流自定义规则。