Agent Skills:给 AI Agent 装上可插拔的专业记忆
Agent Skills 是 Anthropic 发布的开放格式,让 AI 能按需加载专业知识,而不是每次都从零开始。
AI 越来越聪明,但它不了解你
用过 Claude Code 或 GitHub Copilot 的人大概都有这个体感:模型本身很强,但对你的项目一无所知。它不知道团队的代码规范,不知道哪个接口有坑,不知道”用户 ID”在数据库、认证服务、计费系统里各叫什么名字。
以前的解法是把这些背景手动粘贴给 AI,或者写进系统提示词。但这些知识换个工具就失效,换个同事就要重写,根本无法沉淀。Agent Skills 要解决的,就是这件事。
01 一个文件夹,就是一个 Skill
结构极简:一个目录 + 一个 SKILL.md,frontmatter 只需两个字段——名字和描述,正文写具体指令。
---
name: pdf-processing
description: 处理 PDF 时使用,包括提取文本、填写表单、合并文件。
---
# 正文:告诉 Agent 具体怎么做
使用 pdfplumber 提取文本。
扫描件需要 OCR,改用 pdf2image + pytesseract。
Skill 还可以附带 scripts/(可执行脚本)、references/(参考文档)、assets/(模板资源),按需组织,不强制。
02 按需加载,不浪费上下文
核心设计是三层渐进式加载——装了二十个 Skill,实际消耗的只有用到的那几个:
| STEP 1 扫描目录 | STEP 2 激活读取 | STEP 3 按需执行 | |
|---|---|---|---|
| 内容 | 只读 name + description | 加载完整 SKILL.md 正文 | 脚本和参考文档按需读取 |
| 开销 | ~100 tokens/个 | < 5000 tokens | 按需计算 |
这个机制让 Skill 数量和上下文开销解耦。可以维护一个丰富的团队 Skill 库,而不用担心每次对话都被撑爆。
03 写好一个 Skill 的关键
Skill 的价值不在于写了多少,而在于写了 AI 本来不知道的东西。
AI 已经知道 HTTP 是什么、怎么写 SQL、PDF 格式是什么——这些不用写。真正有价值的是只有你的团队才知道的东西。文档把这类内容叫 Gotchas,举了一个典型例子:
某张表用了软删除。查询必须加
WHERE deleted_at IS NULL,否则结果会包含已注销的用户。——这种信息 AI 踩过才知道,但写进 Skill 就永远不会再踩。
另一个反直觉的建议:Skill 不是越详细越好。 指令堆太多,AI 反而会迷失。简洁的分步说明 + 一个可运行示例,往往比面面俱到的文档效果更好。
还有一点容易被忽视:AI 靠每个 Skill 的 description 判断要不要激活它。描述写得太窄,该用的时候没触发;写得太宽,不该用的时候乱触发。好的描述要站在用户意图的角度写,而不是描述 Skill 内部怎么实现的。
04 典型使用场景
- 沉淀团队知识:内部 API 用法、数据库的坑、命名约定写成 Skill,新人直接用,不靠老人口口相传。
- 扩展 AI 能力:让 AI 学会创建符合团队规范的文档、生成标准格式的报告、调用特定工具链。
- 标准化工作流:多步骤流程写成 Skill,每次 AI 都按同样步骤走,结果可预期、可审计。
- 跨工具复用:同一个 Skill 文件夹,Claude Code、VS Code Copilot、OpenAI Codex 均可识别,无需重复配置。
Agent Skills 解决的不是 AI 能力的问题,而是知识传递的问题——把团队积累的经验、踩过的坑、形成的规范,变成 AI 可以直接使用的形式,像代码一样版本控制、协作流通。
由 Anthropic 发起,已是开放标准。想试试?在项目目录建 .agents/skills/skill名/SKILL.md 就可以开始了。详细文档见 agentskills.io。