Skip to content

一篇文章搞懂什么是 Agent Skills

——Agent 真正“能干活”的关键能力

如果你最近在折腾 AI Agent,很可能已经遇到过这种情况:

模型很聪明,但输出不稳定
Prompt 越写越长,效果却越来越玄学
接了 MCP、Tool,Agent 还是不知道“该怎么专业地做事”

你是不是也遇到过这些问题,其实问题不在模型,也不在工具,而在于:

Agent 缺的不是能力,而是“做事方法”。

这正是 Agent Skills 出现的原因。

一、先给结论:什么是 Agent Skills?

一句话讲清楚:

Agent Skills 是一套“教 Agent 怎么做事”的标准化技能说明书。

不是 Prompt,也不是 Tool,而是介于两者之上的一层:

  • 有明确使用场景
  • 有固定执行流程
  • 有稳定输出标准
  • 能长期复用、版本化管理

你可以把它理解为:

👉 给 Agent 配的一本「岗位技能手册」

不是临时交代任务,而是明确告诉它:
“这类事,你应该一直这样做。”

二、为什么 Prompt + Tool 已经不够用了?

1️⃣ Prompt 的天然问题

Prompt 最大的问题不是“不好写”,而是:

  • 一次性上下文,用完即丢
  • 难以复用,难以版本管理
  • 多个 Prompt 组合时极易互相干扰

Prompt 解决的是:

“这一轮你该怎么回答”

但解决不了:

“以后遇到类似问题,你应该一直怎么做”

2️⃣ Tool / MCP 的能力边界

  • Tool 解决的是:能做什么
  • MCP 解决的是:怎么接入外部能力
  • API、数据库、文件系统,全都打通了

但它们不负责一件事

❌ 事情应该按什么流程来做

3️⃣ Agent Skills 补上的那一层

Agent Skills 解决的是:

长期、稳定、可复用的“做事方法论”

一句话总结三者分工:

Prompt 解决「这一轮怎么说」
Tool / MCP 解决「能干什么」
Agent Skills 解决「长期应该怎么干」

三、Agent Skills 长什么样?

从官方规范看,一个 Skill 至少是一个文件夹:

skill-name/
├── SKILL.md              # 主要说明(触发时加载)
├── FORMS.md              # 表单填充指南(根据需要加载)
├── reference.md          # API 参考(根据需要加载)
├── examples.md           # 使用示例(根据需要加载)
└── scripts/
    ├── analyze_form.py   # 实用脚本(执行,不加载)
    ├── fill_form.py      # 表单填充脚本
    └── validate.py       # 验证脚本

其中,SKILL.md 是灵魂

它定义的不是“回答格式”,
而是:一整套可执行的行为流程

四、SKILL.md 官方模板

1️⃣ 官方最小可用模板

md
---
name: example-skill
description: 简要说明该技能的用途和适用场景
---

## 使用场景
说明在什么情况下应该使用这个 Skill。

## 执行步骤
1. 第一步要做什么
2. 第二步要做什么
3. 异常情况如何处理

## 输出要求
说明输出格式或必须包含的内容。

这个模板本身就体现了 Agent Skills 的核心思想:

不是告诉模型“怎么回答”,
而是规定“事情要怎么做”。

2️⃣ 更推荐的实战模板

md
---
name: security-log-analysis
description: 对安全日志进行结构化分析,判断是否存在异常行为
metadata:
  version: 1.0
  author: ailot
---

## 技能目标
明确这个 Skill 希望 Agent 达成的目标。

## 输入说明
- 支持的输入类型
- 必须包含的字段

## 执行流程
1. 识别数据类型
2. 提取关键字段
3. 进行规则或逻辑判断
4. 输出分析结论

## 输出格式
- 是否异常:
- 判断依据:
- 风险说明:
- 建议动作:

## 注意事项
- 无法确认时必须说明不确定性
- 禁止空泛总结

五、为什么 Agent Skills 特别省 Token?

因为它采用 渐进式加载机制

  1. 启动时:只加载 name + description
  2. 判断匹配时:加载完整 SKILL.md
  3. 执行过程中:再按需加载脚本或资源

结果是:

  • 不污染上下文
  • 不浪费 Token
  • Agent 更容易选对技能

六、Agent Skills 和 MCP 的关系

一句话区分:

MCP 解决“能用什么能力”,
Agent Skills 解决“怎么用这些能力”。

对比项Agent SkillsMCP
关注点做事方法外部能力
本质行为与决策规范API / 数据 / 系统
是否直接执行

一个好理解的比喻:

  • MCP 是工具箱
  • Agent Skills 是使用说明书

七、在 OpenCode 中如何配置和使用 Skill

这是很多读者最关心的一步。

1️⃣ Skill 放在哪?

OpenCode 会自动扫描以下目录:

项目级(推荐)

.opencode/skill/<skill-name>/SKILL.md

全局级

~/.config/opencode/skill/<skill-name>/SKILL.md

兼容目录:

.claude/skills/<skill-name>/SKILL.md

2️⃣ Skill 规范要求

  • 文件名必须是 SKILL.md
  • name 必须小写,和目录名一致
  • 必须包含 description

⚠️ 最常见的坑
name 和目录名不一致, Skill 会直接失效。

3️⃣ Skill 权限控制(可选)

opencode.json 中:

json
{
  "permission": {
    "skill": {
      "pr-review": "allow",
      "experimental-*": "ask",
      "internal-*": "deny",
      "*": "allow"
    }
  }
}

👉 可以精确控制哪些 Skill 能被 Agent 使用。

权限行为
允许(allow)技能立即加载
拒绝(deny)技能对智能体隐藏,访问请求被驳回
询问(ask)加载前向用户请求批准
模式支持通配符:例如 internal-* 可匹配 internal-docsinternal-tools 等名称。

八、3 个完整 Agent Skills 实战案例

✅ 案例一:能生成Skills的Skill

这是官方的一个skill,安装方法也很简单,直接把这段提示词发给AI,这里我们以opencode为例。

安装这个skill,该sikll的地址为: https://github.com/anthropics/skills/tree/main/skills/skill-creator

当然,国产的IFLOW也有这个功能,它是直接把这些skills放到了在线技能市场,可以随时安装。

选择想要的技能直接回车就行

✅ 案例二:代码审查 Skill

直接把提示词丢给AI,让他自己给我生成一个skill

帮我制作一个代码审查的skill,要求对代码进行结构、可读性和潜在风险的系统性审查,能够理解代码功能
,从结构、命名、边界条件、安全性四个维度检查,明确指出问题并给出可执行建议;
输出要求:1、条目化;2、问题与建议一一对应;3、不给空泛评价

✅ 案例三:百度热点数据抓取skill

制作一个百度热点数据抓取的skill

哼哧哼哧的就干完了!!!

来测试一下效果,输入提示词:

帮我抓取今天百度的热点信息

虽然百度的广告占了俩,但是内容大差不差!

九、官方资源与生态

🔗 Agent Skills 官方规范

https://agentskills.io/home

🔗 SkillsMP(Agent Skills 市场)

https://skillsmp.com

在 SkillsMP 你可以:

  • 看别人怎么写 Skill
  • 直接复用成熟 Skill
  • 快速建立自己的技能库

🔗 官方文档

入门指南:https://code.claude.com/docs/zh-CN/skills 概览:https://platform.claude.com/docs/zh-CN/agents-and-tools/agent-skills/overview 官方开源的skill:https://github.com/anthropics/skills

十、最后一句话总结

Agent Skills 不是让模型更聪明,
而是让 Agent 更像一个“真正会干活的专业员工”。

如果你已经在做 Agent,
不妨从一个最小 Skill 开始,
把你最常用、最稳定的一段 Prompt,升级成真正的 Agent Skill。

兵器终究要自己用着顺手,
适合自己的,才是最好的。