GitHub 趋势 · 第 33 期

Cursor 官方插件市场里,有一个 Cursor 永远装不上的插件

#Agent工具#插件生态#横向对比

先把判断放在前面:cursor/plugins 真正值得看的不是那 77 个插件,而是它把「插件」写成了一份可校验的 JSON 规范。规范里连「哪个客户端根本不该装它」都有专门字段 —— 官方市场的 finance 插件,在 Cursor 这一项上被显式标成了 never

先说你已经在踩的坑

你现在装了七八个 agent 插件,但要你说清「到底装了什么」,多半说不出来:一个插件可能是 skills、rules、hooks、commands、MCP server 的任意组合;客户端升一次级,某个插件悄悄就不能用了;最麻烦的是 MCP server 用 npx 带最新版标签启动 —— 你把仓库 commit pin 得死死的,可每次会话启动拉下来的是 registry 上的新版代码。

这些问题的根源不是插件写得好不好,而是各家「插件」这个词的定义根本不一样。所以这期换个思路:以 Cursor 的官方插件仓库为主线,把三家的市场机制摆在一起看。

项目是什么

仓库名 cursor/plugins(https://github.com/cursor/plugins),自述是「Cursor plugin specification and official plugins」—— 一半是规范,一半是官方插件。7,365 star、639 fork,本月新增 4,683,最近一次提交在 2026-09-10。许可为 MIT。

它不是「一个插件」,而是一个多插件市场仓库:顶层 15 个官方自研插件目录,加一个 third_party/ 放 SaaS 集成,另配 schemas/ 放两份 JSON Schema、scripts/ 与 .github/workflows/ 做校验。全仓库的索引只有一份文件 —— .cursor-plugin/marketplace.json。

三家厂商的市场机制对照

同一件事——「让 agent 装到别人写的能力」——三家给出的答案差别不小。下面是逐个核对仓库原始文件后的结果,OpenAI 那一列是上期实测过的数据。

维度cursor/pluginsclaude-plugins-communityopenai/plugins
定位插件规范 + 官方插件社区插件只读镜像精选插件目录
清单条目77 条首次同步 214 个65 条 / 10 分类
收录方式官方自研 + third_party提交后审核,夜间自动同步目录收录,多来自各自的 release
安装方式/add-plugin 插件名claude plugin install 名@claude-community随 Codex 客户端
版本门minClientVersions:semver 或 never源码 SHA pin + MCP 启动器静态检查仓库外条目不锁版本
许可MIT见仓库 LICENSE根目录无 LICENSE

差别最值得记的是「版本门」这一行。Anthropic 那边社区仓库的 CI 里有一段说明写得非常直接:用 npx、bunx、uvx、pipx 这类包管理器启动器、并且写的是浮动版本号(最新版标签、版本区间、或者根本没写版本的裸包名)的 MCP server,会在会话启动时就执行 registry 解析出来的代码,而清单条目里 pin 的源码 SHA 管不到这一段。Cursor 这边则换了个思路:把「客户端能不能装」写进 schema,用 never 直接关闭。

一个插件到底能装哪些东西

这是 schemas/plugin.schema.json 里定义的全部字段,也是理解「插件」这个词的关键 —— 它同时管着提示词资产、规则、钩子和外部服务凭据。

字段装的是什么
skills带 frontmatter 的 SKILL.md,路径或 glob
rules.mdc 规则文件
commands命令文件
agentsagent 定义文件
hooks钩子配置文件路径,或内联对象
mcpServersMCP 配置:路径、内联对象,或两者组成的数组
variables需要用户填的变量,用 JSON Schema 描述
minClientVersionscursor / grokbot / sand,值为 semver 或 never
licenseSPDX 标识,如 MIT

两个容易被忽略的细节。第一,schema 只强制一个字段 name,但写了 additionalProperties: false —— 字段名拼错不会静默忽略,而是直接校验失败。第二,variables 是真让用户填东西的:github 插件的清单里就要求必填 GITHUB_PERSONAL_ACCESS_TOKEN,同时它的客户端版本门写着 cursor 3.13.0。

上手:一条命令背后是两个钩子

安装很轻。以 ralph-loop 为例,README 里给的命令就一行:

/add-plugin ralph-loop

这个插件本身也是最好的教材:它让 Cursor 反复用同一句提示词自循环,直到任务完成。机制是两个钩子 —— afterAgentResponse 钩子逐条检查回复里有没有约定的完成标签,stop 钩子在每轮结束时判断迭代次数和标签,没完成就把原提示词当成 followup_message 再灌回去。提示词一个字不改,代码一轮轮变。用的时候有两个参数:--max-iterations 限次、--completion-promise 指定完成短语。

仓库的目录结构约定如下,照着搭就能自建内部市场:

plugins/
├── .cursor-plugin/
│   └── marketplace.json       # 市场清单(列出全部插件)
├── plugin-name/
│   ├── .cursor-plugin/
│   │   └── plugin.json        # 单插件清单
│   ├── skills/                # agent skills(带 frontmatter 的 SKILL.md)
│   ├── rules/                 # Cursor rules(.mdc 文件)
│   ├── mcp.json               # MCP server 定义
│   ├── README.md
│   ├── CHANGELOG.md
│   └── LICENSE
└── ...

清单文件本身长这样,字段少到可以背下来(下面这份是 create-plugin 的真实清单,注释为补充说明):

{
  "name": "create-plugin",
  "displayName": "Create Plugin",
  "version": "1.0.0",
  "author": { "name": "Cursor", "email": "plugins@cursor.com" },
  "license": "MIT",
  "category": "developer-tools",
  "skills": "./skills/",
  "rules": "./rules/",
  "agents": "./agents/"
}

我的判断

适合谁:要给团队统一 agent 能力的工程负责人 —— 这份 schema 加上校验工作流,基本就是一个可直接抄的内部插件市场骨架;以及所有想知道「我到底装了什么」的 Cursor 用户。
不适合谁:指望像 npm 那样有海量第三方生态的人。77 条里相当一部分是 SaaS 集成,装上是真的要把账号和凭据接进去;对凭据流向敏感的组织,先看清 variables 要你填什么再决定。

数据与核实:cursor/plugins(https://github.com/cursor/plugins)· 7,365 star / 639 fork,GitHub 月度趋势新增 4,683 · 最近提交 2026-09-10 · 许可 MIT(见 README License 小节)· 清单条数与字段定义实测自 .cursor-plugin/marketplace.json 与 schemas/plugin.schema.json · Anthropic 对照数据来自 anthropics/claude-plugins-community(https://github.com/anthropics/claude-plugins-community)· 数据来源:GitHub Trending 官方页面 · 抓取时间:2026-09-11 06:50

你手里有没有装过一个「装完才发现根本用不上」的插件?或者反过来 —— 有哪个插件值得单独拎出来讲一期?评论区说说,我按你们点的来。

下期预告:这期把三家的插件市场摆平了,下一期换个方向看基础设施 —— volcengine/OpenViking(36,493 star,本月 +8,284),火山引擎开源的「自演化 Context 数据库」,把 agent 记忆、知识检索和 skills 塞进同一套存储。若核实后撑不起一期,就换月榜上的 omacom/omarchy(40,043 star,本月 +15,578)。

#Agent工具#插件生态#横向对比