夏日幽灵 サマーゴースト (2021)
Agent Skills 介绍与最佳实践:把经验变成可复用工作流 agent skills intro best practices Skills Agent工程 工作流 自动化 AI工程
1377 字
7 分钟
Agent Skills 介绍与最佳实践:把经验变成可复用工作流
结论先说
如果你已经在反复做同一类任务(比如固定格式写作、发布流程、资料调研、社区巡检),最值得做的不是继续“临场发挥”,而是把它封装成 Skill。
我现在默认用这套判断:
- 重复 3 次以上的任务,开始考虑做 Skill
- 涉及多步骤、多依赖、多边界(比如外部发布)的任务,优先做 Skill
- 需要长期维护一致输出质量的任务,必须做 Skill
真正关键的不是“让 Agent 更聪明”,而是让流程更稳定、可检查、可迭代。
什么是 Skill(以及它不是什么)
在各种 Agent 系统里,Skill 本质上是“面向任务的标准作业包”,通常包含:
SKILL.md:入口说明、适用场景、决策树、执行步骤references/*.md:风格规范、规则细节、发布手册scripts/*:需要脚本化的步骤(可选)
它不是“写一段提示词就完事”。
Skill 的价值在于:把人脑里的隐性经验,变成显性、可复用、可审计的流程。
什么时候应该做 Skill
建议用这个快速判断表:
| 场景 | 是否值得封装 Skill | 原因 |
|---|---|---|
| 一次性小任务(10 分钟内) | 否 | 封装成本可能高于收益 |
| 每周都会做的同类任务 | 是 | 可以持续节省沟通和返工成本 |
| 多工具串联流程(写作+封面+上传+发布) | 强烈建议 | 最容易在步骤衔接处出错 |
| 高风险动作(外发、删除、改配置) | 强烈建议 | 需要固定安全边界和确认机制 |
NOTE不要一把梭。先把最常做、最容易出错的一条链路封装好,再扩展。
一个好 Skill 的结构模板
下面这个结构我在项目里反复验证过,够实用:
skills/ your-skill/ SKILL.md references/ style-profile.md rules.md runbook.md scripts/ pipeline.pySKILL.md 建议固定包含这 6 部分:
- Overview:这个 Skill 解决什么问题
- Decision Tree:用户不同诉求如何分支处理
- Execute:每个阶段的操作步骤
- Quality Gate:交付前必须通过的检查项
- Safety:哪些动作要确认、哪些不能自动做
- Examples:至少 1 组可复制执行示例
最佳实践 1:把触发条件写具体
很多 Skill 用不好,不是能力不够,而是触发条件太模糊。
反例
- “当用户提到文档时使用”
正例
- “当用户提到 Feishu docx 链接、云文档写入、批量追加文档内容时使用”
触发条件越清晰,路由越稳定,误触发越少。
最佳实践 2:先决策再执行,不要边跑边想
在 SKILL.md 里给出明确决策树,例如:
- 新建文章 -> 创建新文件 -> 写作 -> 封面 -> 发布
- 改稿 -> 编辑现有文件 -> 保留 frontmatter -> 可选重做封面
- 只改封面 -> 不动正文 -> 仅更新
image字段
这样做的好处是:
- 输出路径可预测
- 复盘时能快速定位在哪个分支出问题
- 新需求可以挂在现有分支上增量迭代
最佳实践 3:把“可执行片段”写进文档
我一般会要求每个 Skill 至少包含:
- 1 段可执行命令(或脚本调用)
- 1 段配置示例(如 YAML)
- 1 段风险提示与回滚建议
示例(YAML 配置片段):
workflow: name: blog-pipeline stages: - write - cover - upload - verify safety: require_confirm_for: - publish - deleteWARNING涉及外部发布(推送、发帖、对外消息)时,不要默认自动执行。建议显式确认后再做最后一步。
最佳实践 4:质量门禁要量化
不要只写“检查一下有没有问题”,要写成可验证条目。
推荐最小门禁清单:
- 必填字段完整(如 frontmatter)
- 关键链接可访问(HTTP 200)
- 构建通过(无报错)
- 变更文件清单清晰
- 交付信息完整(包含路径、哈希、下一步建议)
有门禁,才有“稳定复现”。
最佳实践 5:把坑写进 references,而不是写进脑子
很多团队会反复掉进同一个坑:
- 环境变量名写错
- 文件路径约定不一致
- 发布前漏 build
- 图片格式和尺寸不统一
我的做法是:每次踩坑后,立刻补一条 reference 规则。这不是文档洁癖,是在降低未来沟通成本。
常见反模式(建议避开)
- 大而全 Skill:一个 Skill 包所有任务,最后谁都不敢改
- 流程无边界:读写发布都自动执行,缺少确认点
- 只有步骤没有判定:看起来很完整,实际执行时频繁卡住
- 没有版本意识:更新后不记录变化,回归问题难定位
我现在的默认落地流程
如果你想在一周内把 Skill 真正用起来,可以按这个节奏推进:
- 先选一个高频任务做 MVP Skill(不要超过 1 条主链路)
- 跑 3 次真实任务,记录失败点
- 补齐
references和Quality Gate - 再决定是否加脚本自动化
- 最后才考虑扩展到第二个相邻任务
这不是追新,是为了降低后续维护成本。
结尾建议
如果你现在还在“每次都从头讲需求、从头试命令”,那就已经到了该做 Skill 的阶段。建议从你最常做、最容易返工的一条流程开始,把它写成可复用模板。
先把一个 Skill 做稳,再谈规模化。
Agent Skills 介绍与最佳实践:把经验变成可复用工作流
https://bangwu.top/posts/agent-skills-intro-best-practices/