Anthropic 的官方 Claude Code 插件市场,已经不再是藏在配置目录里的传闻了。公开 GitHub 仓库 anthropics/claude-plugins-official 截至 2026 年 6 月 17 日已有超过 30,000 个 star,它的 README 描述了一个经过筛选的目录,里面既有 Anthropic 内部插件,也有第三方条目。同一份 README 里还有一句话,应该直接决定你的安全姿态:“安装、更新或使用插件前,请确保你信任这个插件”,因为 Anthropic 并不控制这些插件里的每一个 MCP 服务器、文件或其他打包依赖(GitHub)。
这不是法律免责套话。一个 Claude Code 插件可以打包斜杠命令、skills、agents、hooks、MCP 服务器、LSP 服务器、可执行文件和设置。用开发者能听懂的话说:它可以添加提示词上下文、启动本地进程、调用远程服务、在生命周期事件上运行 shell hooks,并向模型暴露新工具。
正确的心智模型不是“安装一个编辑器主题”。而是“添加一个能在我的源码树旁边执行代码的依赖”。

市场是真的,但“官方”不等于“闭眼安全”
Anthropic 于 2025 年 10 月 9 日发布 Claude Code 插件,称它们是斜杠命令、agents、MCP 服务器和 hooks 的集合,可以通过 /plugin 安装(Claude blog)。当前 Claude Code 文档说,官方 Anthropic 市场 claude-plugins-official 会在 Claude Code 启动时自动可用,并且你可以这样安装插件:
/plugin install github@claude-plugins-official
如果插件缺失,文档会让你这样刷新市场:
/plugin marketplace update claude-plugins-official
或者这样添加它:
/plugin marketplace add anthropics/claude-plugins-official
这是官方的顺畅路径(Claude Code docs)。它很有用。但如果把它当成运维策略,就还不够。
官方仓库的 marketplace 文件指向的来源混合了本地插件目录,以及用 commit SHA 固定的外部来源。例如,条目可以在 .claude-plugin/marketplace.json 中引用 GitHub 仓库、子目录、refs 和 SHA(raw marketplace file)。固定版本有帮助,但并不会免除你检查固定代码到底做了什么的责任。插件仍然可能启动服务器、索要凭据、运行 hooks,或者依赖一个会在 marketplace manifest 之外改变行为的二进制文件。
社区也注意到了同一件事。在最近一个询问重要 Claude Code 插件的 r/ClaudeAI 讨论串里,有人建议先用 CLAUDE.md 和 hooks,然后只加项目特定的 MCP 服务器。另一个人警告不要往 Claude Code 里“乱扔随机连接器”,因为它们会消耗 token,还可能造成上下文污染(Reddit)。这就是现在真正的现实争论:插件很强,但每多一个能力,就多一块成本面。
先看 Manifest,再读仓库
你的第一个审计目标是插件源码。不要因为搜索摘要、博客里复制来的命令,或者随机 marketplace 聚合站就直接安装。先确认你能把来源追溯回一个仓库和 manifest。
在官方 marketplace 仓库里,检查:
.claude-plugin/marketplace.json里的 marketplace 条目source类型、URL、path、ref 和 SHA- 插件的
.claude-plugin/plugin.json,如果存在 - 任何
.mcp.json、.lsp.json、hooks/hooks.json、commands/、skills/、agents/、bin/和脚本
Anthropic 的插件参考列出了核心组件路径。Hooks 位于 hooks/hooks.json,MCP 服务器可以位于 .mcp.json,可执行文件可以位于 bin/,插件 manifest 还可以指向自定义组件位置(Claude Code plugin reference)。也就是说,“我检查过 plugin.json”还不够。插件可以依赖默认发现路径。
一次快速人工审查大概是这样:
git clone https://github.com/OWNER/PLUGIN-REPO /tmp/plugin-audit
cd /tmp/plugin-audit
find . -maxdepth 3 \( \
-name plugin.json -o \
-name hooks.json -o \
-name .mcp.json -o \
-name .lsp.json -o \
-path "*/bin/*" -o \
-path "*/scripts/*" \
\) -print
rg -n "curl|wget|bash|sh -c|chmod|open |xdg-open|osascript|token|api_key|secret|eval|exec|spawn|subprocess"
这个 rg 命令很粗暴,但这里粗暴正合适。你要找的是安装时的意外行为、shell 执行、浏览器启动、远程下载、凭据处理,以及会修改你的仓库或 home 目录的脚本。
我的规则是:如果一个插件需要靠 shell 脚本完成核心工作,我会在安装前弄懂脚本里的每一条命令。如果它在运行时下载另一个构件,我会把这个运行时构件也视为插件的一部分。
MCP 服务器是最昂贵的“便利”
MCP 是插件便利性变成隐藏成本的地方。Anthropic 的 MCP 文档说,插件定义的 MCP 服务器会在插件启用时自动启动,插件 MCP 工具会和手动配置的 MCP 工具一起出现(Claude Code MCP docs)。文档还说,插件 MCP 服务器使用和手动配置服务器相同的环境变量;如果你的 shell 导出了云 token、数据库 URL 或内部服务凭据,这一点就很关键。
社区的抱怨很具体:MCP 工具 schema 可能在你调用工具之前就吃掉上下文。在一个 r/ClaudeCode 关于 token 开销的讨论串里,用户指出禁用插件、没有重型 MCP 服务器,可能是 token 消耗更低的原因;还有评论者把 MCP 工具 schema 称为“巨大的隐藏成本”(Reddit)。在另一个讨论串里,有评论者声称已连接的 MCP 服务器会把工具 schema 注册进上下文,并建议按会话裁剪服务器(Reddit)。
Reddit 上的具体 token 估算,除非你在自己的环境里复现,否则都应当视为传闻。但方向判断仍然没错:一个永远在线、带有许多冗长工具的服务器,不是免费的。
安装连接器类插件前,先用这张决策表:
| 需求 | 更安全的默认选择 | 什么时候用 MCP |
|---|---|---|
| 执行 GitHub 操作 | 通过 Bash 使用 gh CLI | Claude 必须交互式浏览 issues、PRs 和元数据 |
| 查询数据库 | 只读 CLI 或本地脚本 | Claude 需要带范围凭据的结构化工具调用 |
| 检查云资源 | 使用带明确命令的厂商 CLI | MCP 服务器权限很窄,并且有清晰审计日志 |
| 获取文档 | 静态文档、仓库文件或网页链接 | 资源很大、动态变化,并且会被频繁引用 |
| 执行策略 | PreToolUse hook | 决策需要 Claude 可见的上下文或工具元数据 |
CLI 工具通常更安全,因为它只在需要时被调用,并且只为当前回合产生输出。当 MCP 提供的是有范围限制的 OAuth、类型化工具和审计日志时,它也可以更安全。错误在于把 MCP 当成默认反射动作来安装。

Hooks 值得单独做安全审查
Hooks 是让插件显得很神奇的功能。它们也是我审计最严格的功能。
Claude Code hooks 可以在 SessionStart、UserPromptSubmit、PreToolUse、PostToolUse、PreCompact 和 SessionEnd 等事件上运行。插件参考说 hook 类型包括 command hooks、HTTP hooks、MCP tool hooks、prompt hooks 和 agent hooks(Claude Code plugin reference)。Hooks 指南解释说,PreToolUse hook 可以通过退出码 2 阻止操作,而 UserPromptSubmit、UserPromptExpansion 和 SessionStart 的 stdout 可以被加入 Claude 的上下文(Claude Code hooks guide)。
这权力很大。
好的 hook 会阻止危险行为,或者添加紧凑、确定性的上下文。坏的 hook 会把每个提示词都变成昂贵的 RAG 流水线,把提示词文本泄露到 HTTP endpoint,或者悄悄改变你的环境。
审计 hooks 时问四个问题:
- 是什么事件触发它?
- 什么 matcher 限制它?
- 它会接收什么数据?
- 它会向 stdout、stderr、磁盘、网络或上下文写入什么?
社区在这里的分歧很有价值。在一个 r/ClaudeCode hooks 讨论串里,一些开发者把 hooks 描述成强制规则、阻止危险 git 操作、提醒 Claude 写入 memory 的唯一可靠方式。另一些人则在 UserPromptSubmit 上构建复杂的 memory 和 RAG 流程(Reddit)。两者都可能合理。区别在于预算和爆炸半径。
对于团队安装,我会比上下文注入 hooks 更早允许策略 hooks。一个阻止 rm -rf 模式的 PreToolUse hook 很容易推理。一个每轮都抓取并注入 memory 的 UserPromptSubmit hook,则需要测量、上限和明确负责人。
小范围安装,测量,然后再推广
Claude Code 支持用户、项目、本地和托管插件范围。文档把用户范围描述为跨项目的个人设置,项目范围描述为通过 .claude/settings.json 共享,本地范围则是项目特定但不共享(Claude Code docs)。
把这些范围当作发布机制来用:
- 先本地安装。
- 跑一个真实任务。
- 检查
/plugin详情和/mcp。 - 启用前后使用
/context和/usage。 - 禁用任何不值回成本的东西。
- 只有审查之后,才推广到项目范围。
文档现在说,在 Claude Code v2.1.143 及以后版本,插件详情面板可以显示上下文成本估算;v2.1.144 及以后版本可以显示最后更新日期;v2.1.145 及以后版本可以显示 “Will install” 清单(Claude Code docs)。按下安装前先用这份清单。如果一个插件自称是 formatter,却要安装一个 MCP 服务器、一个 hook 和一个后台监控器,停下来检查。
也要留意自动更新。Anthropic 说官方 marketplaces 默认启用自动更新,而第三方和本地 marketplaces 默认禁用。文档还介绍了 DISABLE_AUTOUPDATER 和 FORCE_AUTOUPDATE_PLUGINS,用于控制更新行为(Claude Code docs)。自动更新对安全修复很方便,但它会改变你的运行时供应链。对受监管团队来说,与其让每台笔记本各自漂移,不如在经过审查的内部 marketplace 中固定 marketplace 版本。

我安装前使用的清单
这是我会给任何使用 Claude Code 的团队开发者的简版清单。
来源:
- 这个 marketplace 是
anthropics/claude-plugins-official、内部仓库,还是第三方仓库? - 插件来源是否固定到 SHA?
- 主页是否匹配源码所有者?
- 仓库近期是否有意外变更、生成式 blob 或安装脚本?
组件:
- 它是否添加 MCP 服务器?
- 它是否添加 hooks?
- 它是否在
bin/中添加可执行文件? - 它是否添加可以调用工具的 agents?
- 它是否添加需要本地二进制文件的 LSP 服务器?
权限:
- 它请求什么凭据?
- 敏感值是否通过插件
userConfig作为敏感字段存储? - MCP 服务器拿到的是只读访问还是写访问?
- hook 是否通过 HTTP 回传数据?
- 是否有脚本继承了宽泛的环境变量?
成本:
/plugin报告的上下文成本是多少?- 启用后
/context有什么变化? - 插件是否每个会话都有价值,还是只在少见工作流中有用?
- CLI 命令能否用更少的持久上下文产出同样结果?
运维:
- 能否用
/plugin disable name@marketplace干净禁用? - 能否干净卸载?
- 它是否留下配置、凭据、守护进程、缓存或浏览器授权?
- 谁负责更新?
- 如果插件来源消失,会坏掉什么?
我的偏执答案是:安装的插件要比你想装的更少。优先选择小而无聊、只增加一个工作流的插件。一次性操作优先用 CLI。只有当服务器范围受限、可审计,并且确实需要交互时,才用 MCP。Hooks 用来做护栏,不要把它们变成你希望模型记住的所有偏好的垃圾场。
插件正在成为 Claude Code 的工作流包格式。这是好事。它意味着团队可以共享可重复设置,而不是靠部落式提示词传说。但这个包格式足够强大,值得做依赖审查、权限审查和成本审查。如果你不会在不阅读的情况下把一个工具 curl | bash 进你的仓库,那也不要只因为它出现在友好的 marketplace UI 里,就安装它的插件版本。
安静页脚:如果你想亲自试试 Claude Fable 5,可以通过 Claude Fable 5 on OneHop 使用它,这是一个 drop-in endpoint,价格比标价低约 30%。新账户可以先领 $10 免费额度,无需信用卡。
延伸阅读:Claude Fable 5 入门.