如果你同时用 Cursor、Codex 和 ChatGPT 写代码,一定遇到过这个烦恼:给 Cursor 配的 MCP 服务器,换到 Codex 要按另一种格式重新写一遍;为一个客户端写的技能(Skill),迁移到另一个客户端要改目录结构。每个 Agent 工具各立山头,同一个能力要维护好几份。
这个局面在 2026 年 8 月 6 日被打破了:Vercel 发起、AWS、Anysphere(Cursor 母公司)、GitHub、微软、OpenAI 共同完善的 Agent Plugins 1.0.0 开放标准正式发布。一句话概括:把 Agent Skills(可复用的指令)和 MCP 服务器(工具与数据连接)打包进同一个文件夹,任何兼容客户端都能识别和加载。 首发支持的客户端包括 ChatGPT、Codex、Cursor、GitHub Copilot、Kiro 和 VS Code。
本文按实战顺序展开:先看清标准规定了什么,然后亲手打包一个最小可用的插件,最后说清几个容易踩的坑。
一、这个标准到底规定了什么(和刻意不规定什么)
理解 Agent Plugins 最快的方式,是记住它是"信封"而不是"内容":Skills 和 MCP 本身就是开放格式,之前缺的是一个把它们装在一起的统一封装。Agent Plugins 就是这个封装。
标准管的事情很少,只有两类:
| 标准范围内 | 标准范围外(留给各客户端自己定) |
|---|---|
| 插件文件夹的目录结构 | 分发渠道和市场(Marketplace) |
plugin.json 清单文件 |
安装与更新机制 |
Skills 的声明方式(skills/ 目录) |
权限与安全策略 |
MCP 服务器的声明方式(mcp.json) |
命令、钩子、子 Agent 等客户端特性 |
这种"克制"正是六家竞争对手能签同一份文件的原因:一个只定义可移植内核的标准,不要求任何一方让渡战略利益。反过来说,权限模型、审核、商店这些都不在标准里——同一个插件装到不同客户端,能做的事可能不一样,这一点后面还会提到。
二、一个插件的完整解剖
一个 Agent Plugin 就是一个目录,根上放一个清单,加一个 skills/ 文件夹,再加一个可选的 mcp.json:
my-plugin/
├── plugin.json # 必需:清单文件
├── skills/
│ └── summarize/
│ ├── SKILL.md # 技能本体(Anthropic 的 SKILL.md 格式)
│ ├── scripts/
│ │ └── analyze.sh
│ └── references/
│ └── checklist.md
├── mcp.json # 可选:MCP 服务器配置
├── com.example.client/ # 可选:某客户端专属扩展(反向域名命名空间)
├── LICENSE
└── CHANGELOG.md
三层概念的关系可以用一个比喻记住:Skill 是菜谱(教 Agent 怎么做一件事),MCP 服务器是厨具(给 Agent 接通真实的工具和数据),Plugin 是打包好的套餐盒(把菜谱和厨具一起递到任何人手上,不管他用哪个 Agent)。
清单文件只需两个字段
很多人以为会有 npm 那样的繁文缛节,其实一个完全合法的 plugin.json 可以短到只有两行:
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "minimal-plugin"
}
$schema 是常量,必须是这个确切的 URL——它就是插件声明自己遵循哪个版本规范的方式。name 要求小写、不超过 64 字符、不能有连续的点或连字符。其余字段(version、description、author、license、keywords、extensions 等)全部可选。
这里有一个非常容易踩的坑:schema 设置了 additionalProperties: false,任何未知的顶层字段都会让整个清单失效。 如果你从 package.json 里顺手复制了 main 或 type 字段过来,插件就静默作废了。客户端专属的配置要放进 extensions 对象或反向域名文件夹,绝不能放在根层级。
MCP 服务器写在 mcp.json 里
MCP 这一半支持三种传输方式:stdio(本地进程)、Streamable HTTP(当前的远程传输标准)、以及给老服务器留的 HTTP+SSE。本地起服务的用 stdio,远程接 API 的用 Streamable HTTP,按你的服务器形态二选一即可。
三、五步打包你的第一个插件
如果你手上已经有写好的 Skill 或者 MCP 服务器,打包成插件大约只要五分钟。没有构建步骤、没有注册表账号、没有发布仪式:
- 建文件夹:目录名随意,真正的名字由清单里的
name字段决定。 - 把技能放进
skills/:每个技能一个子目录,每个子目录里放一个SKILL.md。技能文件保持干净标准,这是跨客户端翻译能正常工作前提。 - 在
mcp.json里声明 MCP 服务器:本地进程选 stdio,远程服务选 Streamable HTTP。 - 写
plugin.json:必填就$schema和name两个字段;顺手补上description、version、license,不花钱但让别人看得懂。 - 推到 GitHub:这就是你的分发渠道,仓库 URL 就是安装地址。GitHub 的
owner/repo天然就是插件 ID,git tag 天然就是版本历史。
发布前记得验证:用清单里的 $schema URL 对 plugin.json 跑一遍 JSON Schema 校验。因为 additionalProperties: false,一个多余字段就会让插件作废,而编辑器未必会提示你。
四、安装与验证
安装只需要一条命令,而且会装到你机器上所有兼容的 Agent 工具里:
# GitHub 简写,最常见
npx plugins add vercel/vercel-plugin
# 完整 URL
npx plugins add https://github.com/vercel/vercel-plugin
# 本地目录,用来测试自己的插件
npx plugins add ./my-plugin
plugins CLI 会把远程仓库浅克隆到 ~/.cache/plugins/,自动检测你装了哪些 Agent 工具(Claude Code、Cursor、Codex、GitHub Copilot CLI、VS Code、Grok Build、Kimi Code 等),然后把中性的标准格式翻译成每个客户端自己的原生格式装进去。想看一个大插件长什么样:Vercel 官方插件带了 28 个技能、3 个专家 Agent 和 5 个斜杠命令,装完直接用 /vercel-plugin:deploy prod 这样的方式调用。
重点澄清一个广泛传播的误读:Anthropic 不在首发六家名单里,于是很多报道得出结论"Claude 用户被排除在外"。这是错的。准确的说法是——Claude Code 并没有原生解析 Agent Plugins 格式,但 plugins CLI 官方支持把插件翻译后安装到 Claude Code,所以"不是首发伙伴"和"用不了"是两回事。对今天的 Claude 用户的实际建议:把技能写成标准干净的 SKILL.md,把 MCP 配置写成声明式,翻译层现在就能正常工作,将来若原生支持落地也无缝衔接。
五、注意事项与常见问题
1. plugin.json 命名冲突。 这是最容易咬人的坑:Claude Code 自己的市场格式用 .claude-plugin/plugin.json,Agent Plugins 用仓库根目录的 plugin.json。同名文件、不同 schema、不同生态。在任何教程或 AI 生成的答案里看到 "plugin.json",先确认说的是哪一个再抄。
2. 便携性放大的是内容,不分好坏。 插件打包的是 MCP 服务器,而 MCP 服务器正是安全风险所在。有审计机构在标准发布第二天(8 月 7 日)对目录里 199 个 MCP 服务器做了自动化审计:43% 的服务器不公开任何可审计的源码,能审计的仓库里 SBOM(软件物料清单)发布率为零。一键安装别人的插件从未如此容易,这意味着安装前看一眼里面装了什么,比以前更重要。
3. 同一个插件,不同客户端权限可能不同。 权限策略刻意留在标准之外,由各客户端自行决定。别假设在 Cursor 里能跑的行为在 Copilot 里也一样。
4. "Google 也加入了"是未经证实的传闻。 一些早期聚合报道把 Google 和 Amazon 并列写入名单,但 Amazon 实际是以 AWS 身份出现在一手来源里,Google 则既不在 Vercel 的公告里也不在规范官网上。引用时注意区分。
5. 标准才几天大,会快速演进。 目前未解决的事包括:插件的发现与搜索(npx plugins add 假设你已经知道 owner/repo)、信任与审核机制、Claude 和 Gemini 的原生支持。做长期投入前留意规范的版本更新。
小结
Agent Plugins 1.0.0 做的事可以浓缩成一句话:给 Skills 和 MCP 服务器一个统一的信封,让 Agent 扩展从"平台专用胶水"变成"可移植软件"——这正是 MCP 当年为工具连接做的事,如今轮到了打包层。对作者,一次构建全客户端可用;对团队,内部技能和 MCP 服务器有了统一的分发方式;对生态,六家大厂在同一份文件上签字,说明 Skills 和 MCP 就是 Agent 工具链的持久原语。动手门槛极低:两个必填字段的清单、一个 skills/ 目录、一条 npx plugins add。如果你的工作流横跨多个 Agent 客户端,现在就是把自己的能力打包成插件的最好时机。
