Skill
可复用的 prompt + tool + 文档的组合单元。
一定义
Skill 是把"做一件事"打包成一个可调用的单元。它通常包含:一段精心写的 prompt、若个干 Tool、必要的说明文档、以及可选的入口脚本。
二为什么重要
没有 Skill 之前,每次都得重新写 prompt、重新声明 Tool、重新调试行为。Skill 让"做一件事"可以一次写好、反复调用、别人也能用。
三典型结构
skills/
└── translate-tech-doc/
├── SKILL.md # 给模型读的说明
├── tools/
│ └── glossary.py # 术语表查询
├── examples/
│ └── input.md # 一两个示例输入
└── scripts/
└── run.sh # 入口脚本(可选)
SKILL.md 通常包含:
- 这个 Skill 是干啥的、何时调用;
- 输入是什么、输出是什么;
- 它能调用的 Tool 列表;
- 一两个使用示例。
四最小可跑的 Skill
# SKILL.md —— 内容大致是这样
---
name: summarize-url
description: 给定一个 URL,抓回正文并总结成 3 句话。
tools:
- fetch_url
- shorten
---
# Summarize URL
## When to use
- 用户给了一个 URL,想看摘要。
## Steps
1. 调用 fetch_url(url) 拿到正文
2. 调用 shorten(text, max_sentences=3) 拿摘要
3. 直接把摘要返回给用户
五常见误区
- Skill = 大 prompt —— 错。Skill 应该小而专,一个 Skill 只擅长一件事。
- Skill 越通用越好 —— 越通用越不可控,要按场景拆分。
- Skill 没有版本 —— 一定要跟代码一样,带版本号、能 diff、能回滚。