如果每次都要提醒 Agent:“先看现有分类,查一手资料,正文写完还要构建检查”,问题未必出在你不会写 Prompt。更可能是这套重复流程应该有自己的说明书。

在支持 Agent Skills 的运行时里,Skill 是一组可复用的任务说明和配套资源。例如,主文件 SKILL.md 可以写何时使用这项流程、要先读取什么、按什么顺序操作、如何判断完成;旁边还可以放参考文档、模板或脚本。Agent 看到技能的名称和用途后,在适合的任务中加载它。

它像一份工作手册,不是游戏里的技能点。

Skill 能改变流程,不会变出新权限

Skill 可以提醒 Agent 使用哪个工具、怎样处理错误、输出要包含哪些字段。它本身不一定执行代码,也不会自动获得邮件、文件系统或 GitHub 权限。真正的能力来自运行时实际提供的工具、环境与授权。

这个区别很实用:若手册写着“发送通知”,但当前运行环境只有草拟工具,正确结果应是留下草稿或报告受限;不能因为说明书写了动作,就假装动作已经发生。

把一件重复工作写成 Skill

假设你常让 Agent 准备一篇技术博客文章,可以先写一个很小的目录:

1
2
3
4
5
6
publish-technical-post/
├── SKILL.md
├── references/
│ └── editorial-guide.md
└── assets/
└── review-checklist.md

SKILL.md 不用写成小说,关键是让流程可执行、可核对:

1
2
3
4
5
6
7
8
9
10
11
---
name: publish-technical-post
description: 研究并准备技术博客文章;当任务涉及新文章选题、写作或发布时使用。
---

1. 查阅相关旧文章,找出读者问题和新稿角度。
2. 技术事实优先查官方文档,并把来源放入草稿。
3. 完成正文后按 editorial-guide 检查事实、代码和边界。
4. 运行项目已有的校验与构建;记录真实结果。
5. 仅在用户授权发布、且预览检查通过后执行发布步骤。
6. 若构建或发布失败,保留草稿和错误,修复后沿用原稿重试。

这只是示意结构。Skill 的字段与发现机制要按实际平台文档配置。OpenAI 当前 Skills 指南采用目录加 SKILL.md manifest 的形式,并允许配套文件;其他 Agent 框架可能有自己的加载约定。

写得好不好,看失败时它会不会误导

一份有用的 Skill 至少要回答四个问题:

  • 什么时候用? 描述触发情形,避免每个任务都加载一大篇说明。
  • 需要什么输入? 缺少主题、目标读者或授权时,应该补充信息还是停止?
  • 怎么判断做完? “写完了”太模糊;构建通过、页面已查看、线上可访问是不同状态。
  • 失败怎么办? 是重试同一任务、保留现场、请求确认,还是停止?

最容易犯的错是把一串口号叫作 Skill:“准确、专业、认真、有创造力”。这些词缺少动作和证据。把“认真”改成“每个外部技术事实附官方来源;遇到版本差异标出适用范围”,Agent 才知道要做什么。

Skill 也要像代码一样维护。平台能力会变,工具名称会变,过时的工作手册会比没有手册更危险。每次流程失败,都可以检查是模型没遵守、指令写得含糊、还是必要工具根本没提供,再修改对应一层。

如果 Skill 是操作手册,下一个问题就是:手册里提到的文件、工单和外部服务,要怎样用一致的方式接进 Agent?下一篇讲 MCP。

延伸阅读:

上一篇:Agent 不是会聊天的 AI:把一次回答变成一个能收工的循环

下一篇:MCP 给工具箱统一插头:Agent 怎样连接文件、搜索和服务?