插件与 Marketplace
基于 Cursor 官方 Plugins 和 Extensions 文档解释插件、扩展、团队 marketplace、required 插件和安全边界。
Cursor 里有两类容易混淆的扩展能力:Extensions 和 Plugins。Extensions 来自 Open VSX extension registry,主要增强编辑器语言、主题、工具链;Plugins 则可以打包 Rules、Skills、Agents、Commands、MCP servers 和 Hooks,是更接近 Agent 工作流的能力包。
阅读目标:读完本章,你应该能区分 extension 和 plugin,并知道团队上线为什么要审 marketplace、required 插件和 MCP / hooks 风险。
1. Extensions:编辑器扩展
官方 Extensions Help 说明,Cursor 使用 Open VSX extension registry。很多 VS Code 扩展可用,但不是所有扩展都会列出或行为完全一致。
安装方式:
| 系统 | 快捷键 |
|---|---|
| macOS | Cmd + Shift + X |
| Windows / Linux | Ctrl + Shift + X |
然后搜索扩展并点击 Install。扩展会立即激活。
需要注意:
- 可以全局禁用,也可以只对当前 workspace 禁用。
- 如果扩展导致性能问题或和 Cursor AI features 冲突,先禁用验证。
- Verified publisher 需要额外安全 review 和身份确认。
2. Plugins:Agent 能力包
官方 Plugins 文档说明,plugin 可以打包任意组合:
| Component | 官方说明 | 中文一句话 |
|---|---|---|
| Rules | persistent AI guidance and coding standards | 长期 AI 行为约束(如团队代码风格、目录边界) |
| Skills | specialized agent capabilities for complex tasks | 多步可复用流程(如发版检查 / 文档 QA) |
| Agents | custom agent configurations and prompts | 预设 agent 角色 + 提示词组合 |
| Commands | agent-executable command files | 可被 agent 调用的命令脚本 |
| MCP Servers | Model Context Protocol integrations | 接外部系统的协议端点(如数据库 / GitHub / Slack) |
| Hooks | automation scripts triggered by events | 在固定事件(编辑前 / shell 前)自动跑的拦截脚本 |
这意味着 plugin 风险比普通主题或语法扩展更高。它可能改变 agent 行为、引入 MCP、触发 hooks 或自动化命令。
flowchart TD
Add["准备安装能力"] --> Type{"类型"}
Type -->|Extension| OpenVSX["Open VSX extension"]
Type -->|Plugin| Bundle["Rules / Skills / Agents / Commands / MCP / Hooks"]
OpenVSX --> CheckExt["兼容性和性能检查"]
Bundle --> CheckPlugin["供应链、权限、MCP、Hooks 审查"]
CheckPlugin --> Team{"团队分发"}
Team -->|required| Auto["自动安装给分组成员"]
Team -->|optional| User["开发者自行选择安装"]
3. Marketplace 与安全审查
官方 Plugins 文档说明,Cursor Marketplace 用于发现和安装 official plugins。Plugins 作为 Git repositories 分发,并通过 Cursor 团队提交;每个 marketplace plugin 在 listing 前都会 manually reviewed,每次 update 发布前也会重新 review。
官方还说明:
- 官方插件在
cursor.com/marketplace。 - 社区 plugins 和 MCP servers 可看
cursor.directory。 - Plugins 可以 project scope 或 user level 安装。
“已被 marketplace review”不等于团队可以无条件安装。企业仍要按自己的数据、网络、MCP、hooks 和供应链政策审。
4. Team marketplace
官方文档说明,Team marketplaces 适用于 Teams 和 Enterprise。
| 计划 | Team marketplace |
|---|---|
| Teams | 最多 1 个 team marketplace |
| Enterprise | unlimited team marketplaces |
导入 team marketplace 的官方流程:
- 打开 Dashboard -> Settings -> Plugins。
- 在 Team Marketplaces 点击 Import。
- 粘贴 GitHub repository URL。
- Review parsed plugins。
- 可设置 Team Access groups。
- 设置 marketplace name 和 description。
- Save。
5. Required 与 Optional 插件
官方文档说明,把 plugin 分配给 distribution group 时,可以设为 Required 或 Optional。
| 类型 | 行为 |
|---|---|
| Required | 保存后自动安装给该 distribution group 的所有人 |
| Optional | 对该 group 可见,开发者自行选择是否安装 |
如果组织使用 SCIM(System for Cross-domain Identity Management,跨域身份同步标准),distribution groups 可以由 SCIM-synced directory groups 控制。
Required plugin 要格外谨慎,因为它是“组织级自动进入开发者环境”的能力。
深读:为什么 Plugin 比 Extension 更需要审
Extension 通常增强编辑器能力,例如语言服务、主题、格式化或 Git 工具。Plugin 可以把 rules、skills、agents、commands、MCP servers 和 hooks 放进同一个包。这些组件会直接影响 agent 如何理解项目、调用工具、运行脚本和接外部系统。
所以团队可以对普通 extensions 做兼容性审查,但对 plugins 必须做能力审查:它包含哪些 MCP server,hooks 什么时候触发,commands 会不会有副作用,rules 是否会改变团队编码规范。
6. 创建和本地测试 plugin
官方最小 plugin 结构:
my-plugin/
├── .cursor-plugin/
│ └── plugin.json
├── rules/
│ └── coding-standards.mdc
├── skills/
│ └── code-reviewer/
│ └── SKILL.md
└── mcp.jsonplugin.json 只要求 name 字段;其他 components 可以按默认目录自动发现,也可在 manifest 里指定自定义路径。
本地测试路径:
~/.cursor/plugins/local/my-plugin可用 symlink 加速迭代:
ln -s /path/to/my-plugin ~/.cursor/plugins/local/my-plugin本章自检
完成本章后,用这 3 个问题检查自己是否真正理解:
- Extension 和 Plugin 在能力和风险上有什么区别?
- Required plugin 对团队环境意味着什么?
- 安装包含 MCP servers 或 hooks 的 plugin 前应该审什么?
通过标准:你能为团队制定插件安装策略:普通扩展、官方 plugin、社区 plugin、required plugin 分别按不同等级审查。
官方来源
- Cursor Plugins —— 官方说明 plugin 组件、marketplace、team marketplace、required / optional、local testing 和 manifest。
- Cursor Plugins Help —— Help Center 对 plugin 的简明说明和安全 review 说明。
- Cursor Extensions Help —— 官方说明 Open VSX、安装、禁用、extension verification 和冲突排查。
- Cursor Marketplace Security —— 官方 marketplace security 入口。