Agent Skills — 跨厂商 LLM Agent 的通用任务指令格式
截至 2026-10-20:Anthropic 2025-12 公开的 Agent Skills 已是开放标准,SKILL.md 只要 name 与 description 两个必填字段,内容按三层渐进加载;Claude Code、claude.ai、Claude API 与 OpenAI Codex / ChatGPT 读的是同一份 SKILL.md。
Skills 是什么:与 Plugin / MCP 的分工
Skill 是一个目录,含 SKILL.md(YAML frontmatter 的 name / description + markdown 指令正文)和可选的 scripts/、references/、assets/。官方把它定位成可复用的文件系统资源:模型先用 description 判断要不要触发,再按需读正文和脚本,脚本只有输出会进上下文。与 Plugin(客户端功能扩展)、MCP(外部工具协议)不同 —— Skill 不是工具或客户端能力,而是「教模型怎么做事」的指令包;一个 Plugin 可以携带多个 Skills,Skill 内部也可以引用 MCP 工具。
SKILL.md 规范:必填字段与最小例子
SKILL.md 用 YAML frontmatter 声明 name / description,正文用 markdown 写指令。规范里只有 name 和 description 必填,license、compatibility、metadata、allowed-tools 是可选字段,allowed-tools 还标着实验性。官方最小例子:name 写 pdf-processing,description 写「从 PDF 提取文字和表格、填写表单、合并文档,用户提到 PDF、表格或文档提取时用它」。name 最多 64 个字符,只能用小写字母、数字和连字符,不能以连字符开头或结尾;description 不能为空、最多 1024 个字符。目录结构是 skill-name/SKILL.md 加可选的 scripts/、references/、assets/。正文写给模型看的步骤,例如:1. 从用户消息抽取要处理的文件;2. 调用 ./scripts/extract.py 输出结果。模型读到 PDF 类请求时会按 description 自动加载这个 skill。
官方 skill 仓库 + 合作伙伴示例
官方仓库 anthropics/skills 公开了一批参考实现,README 把它们分成创意设计、技术开发、企业沟通、文档处理四大类;其中 docx、pdf、pptx、xlsx 是 Claude 文档能力背后的源码可见版本,其余多数以 Apache 2.0 开源。平台侧另有预置的文档 skill:PowerPoint(pptx)、Excel(xlsx)、Word(docx)、PDF(pdf),可在 claude.ai 与 API 直接用。仓库里还带 skill 模板与规范副本,在 Claude Code 里可把仓库注册成插件市场后按需安装;README 的 Partner Skills 一节目前高亮的是 Notion 的 Claude skill。社区聚合站 SkillsMP(skillsmp.com)自己说明是独立社区项目,汇总公开的 GitHub 仓库方便发现第三方 skill。
跨厂商兼容 + 企业分发与扫描
Anthropic 2025-12 公开为开放标准后,OpenAI 的官方文档写明 Codex 与 ChatGPT 用的就是这套 SKILL.md:Codex 从 $CWD/.agents/skills、$HOME/.agents/skills 和 /etc/codex/skills 读取本地 skill,/skills 或 $ 显式调用,也能按 description 自动触发;同一份 SKILL.md 既能在 Claude Code 跑,也能在 Codex CLI、ChatGPT 跑——一次开发跨厂商部署,但各端之间不自动同步:claude.ai 上传的 skill 要另外传到 API,API 上传的 claude.ai 看不到,Claude Code 的 skill 是本地文件。企业侧要注意:claude.ai 上的自定义 skill 属于个人,官方明确说 claude.ai 不支持集中式管理或组织统一分发;Claude Enterprise 组织可以打开 skill 内容扫描,覆盖 claude.ai 与 Claude Cowork 上传的 skill,走 Skills API 上传的 skill 不在扫描范围内;单次 API 请求最多带 20 个 skill。
FAQ
Skill 与 Custom Subagent 是同一件事吗?
不是。Custom Subagent 是 Claude Code 客户端的 dispatch 单位,含 prompt + tool + dispatch rule。Skill 是更上层的指令包,可被 main agent 或 subagent 加载。官方写法是:subagent 用 skills 字段在启动时预载 skill 全文,一个 subagent 可以引用多个 skill;反过来,skill 也可以用 context: fork 在指定的 subagent 里跑。
我能用 skill 限制模型避免某种行为吗?
不能强制限制 —— skill 是「推荐和指令」,模型仍可能在压力下偏离。官方把 skill 定义为指令与脚本,是否照做要看评估(官方清单里有「指令遵循」「触发准确率」两项)。想真正限制行为,用 Claude Code 的机制:disallowed-tools 能在 skill 生效期间把工具移出可用池,allowed-tools 能预先批准工具,disable-model-invocation: true 让模型不能自动触发这个 skill。强约束别只写在 skill 里,Skill 适合放「如何做对」。
OpenAI 的 Codex / ChatGPT 能用同一套 SKILL.md 吗?
能用。Skill 是 markdown 文本仓库,git clone 即可本地用:Claude Code 放 ~/.claude/skills/ 或 .claude/skills/,Codex 读 .agents/skills 目录。配合 QCode 通路接 Claude / Codex / GPT 模型,跨厂商都用这一份 SKILL.md。官方文档写明 Skills 建立在开放标准之上,SKILL.md 必须含 name 与 description,Codex 与 ChatGPT 先读 name 和 description,需要时再读完整 SKILL.md。
通过 QCode 跨厂商使用 Agent Skills
QCode 套餐共享 Claude / GPT / 国产模型等,所有兼容 Agent Skills 标准——一次开发到处运行。
开通 QCode 套餐