Skip to content

插件与市场

把 skills、commands、hooks、agents 打包成一个可分发的插件。

插件是什么

前面几节讲的 MCP server、skill、slash command、subagent、hooks,每一样都是独立的扩展点。真实开发里往往一个功能需要几样组合:状态栏插件要一个 hook 提供渲染数据 + 一个 skill 教 Claude 怎么读、公司发版流程要一个 slash command 触发 + 一个 skill 定义步骤 + 一个 agent 做 review。分开放很乱,也没办法整体分发给同事。

Claude Code 的插件机制就是把这些组合体打包起来。一个 plugin 是一个目录,里面能放 skills、commands、hooks、agents 中的任意组合,一起装、一起卸、一起升级。

目录结构

插件放在 .claude/plugins/ 下,一个子目录一个插件:

.claude/
  plugins/
    hud/
      plugin.json          # 插件元信息
      skills/
        claude-hud/
          SKILL.md
      commands/
        hud-config.md
      hooks/
        statusline.js
      agents/
        hud-configurator.md

plugin.json 里写名字、版本、作者、依赖:

json
{
  "name": "claude-hud",
  "version": "1.2.0",
  "description": "更好看的状态栏",
  "author": "someone",
  "homepage": "https://github.com/someone/claude-hud"
}

装完之后,插件里的 skills、commands、agents 会自动被 Claude Code 加载,就像放在项目根 .claude/ 下一样。

/plugins 命令

Claude Code 会话里输入 /plugins,会打开插件管理界面。你能在里面:

  • 看当前项目和全局装了哪些插件。
  • 从已配置的 marketplace 搜索、安装新插件。
  • 升级、禁用、卸载已装的插件。
  • 查每个插件带了哪些 skill、command、hook、agent。

命令行也有对应操作:

bash
claude plugin list
claude plugin install <marketplace>/<plugin-name>
claude plugin remove claude-hud
claude plugin update claude-hud

Marketplace 现状

到 2026 年,Claude Code 的插件生态已经初具规模。官方维护一个 marketplace,收录经过基本审核的插件。社区还有几个大的第三方 marketplace,聚合了各种小工具、状态栏、语言专属 skill 包。

装第三方 marketplace 要显式加一次源:

bash
claude marketplace add community https://plugins.example.com

之后从这个源装东西:

bash
claude plugin install community/some-cool-plugin

官方源和社区源

官方 marketplace 默认启用,插件会经过安全审查但数量有限。社区 marketplace 上新更快,好东西多,但审核力度取决于运营方。装之前看清楚源。

安全考虑

插件本质上是一段能在你环境里跑代码的东西:hook 是 shell 脚本或 JS,command 里可以 ! 执行 bash,skill 会引导 Claude 调 tool,MCP server 是完整的可执行程序。装第三方插件的风险不比 npm 装个包低,甚至更高,因为它默认能通过 Claude 间接执行任何命令。

装之前至少看三件事:

  1. 谁维护:作者是谁、GitHub 有多少 star、issue 有没有人回。名字挺唬人但仓库只有一个人一次 commit 的插件慎用。
  2. 能碰什么:翻一下 plugin.json 里声明的权限,看 hooks 和 commands 目录里的脚本会跑什么。特别注意有没有网络请求、有没有 curl 到未知域名、有没有读 .env
  3. 能不能沙箱:project 级安装比 global 级安装安全,装完只影响一个项目。真的不放心,用一个空项目先试。

别在生产项目上直接试新插件

新插件先在 sandbox 项目里跑一天,日志里没 curl 陌生 IP、没读 ~/.ssh/ 之类的行为,再挪到主项目。

组织内部私有 marketplace

大公司里往往不希望员工的 Claude Code 到处装外网插件。这时可以自建一个私有 marketplace,只挂公司审核过的插件。搭建方式很简单:一个 HTTP 服务提供 marketplace 索引 JSON、一批插件仓库或 tarball 放内网 Git,员工的 Claude Code 里配置一次 claude marketplace add company https://plugins.corp.internal,之后所有插件都从内网拉。这条路径特别适合把公司发版流程、内部工具规范做成官方版分发。

一个例子:装 claude-hud 状态栏

claude-hud 是一个很受欢迎的社区插件,把 Claude Code 底部的状态栏做得更花哨:token 用量、当前模型、上下文占比、git 分支、时间,一栏搞定。

安装(假设它在官方 marketplace):

bash
claude plugin install claude-hud

装完之后会话里能看到状态栏变了。它带了一个 skill 叫 claude-hud:configure,用来改布局、语言、显示项:

/claude-hud:configure

这个 skill 会引导 Claude 修改你的 statusline 设置,把偏好持久化到 settings。

想卸掉:

bash
claude plugin remove claude-hud

会把插件目录整个删掉,statusline 设置回退到默认。

自己发一个插件

流程和 npm 包差不多。本地把目录整理好,git init 一下推到 GitHub,plugin.json 里写清元信息,然后向某个 marketplace 提交仓库地址。审核通过后其他人就能用 claude plugin install <你的插件名> 装了。

一个能长期用的插件,README 里至少要写清楚:装完之后新增了哪些 slash command、哪些 skill 会在什么时候自动激活、hooks 会在哪些事件上跑、有没有网络请求、需不需要额外的 API key。这些信息是用户判断要不要装、装了之后会不会踩雷的基础。

插件版本管理

plugin.json 里的 version 字段遵循 semver。装了插件之后 claude plugin update 会去 marketplace 拉最新版,如果 major 版本变了会提示你确认。团队内部共享的插件建议锁一个明确的 tag,别永远追 main,一次自动升级把生产工作流搞崩不是没发生过。

从这里往下走

插件是 Claude Code 扩展体系的最终形态。学到这一层,你就从用别人写好的 Claude Code,进入了给别人写 Claude Code 能力的圈子。下一章讲 SDK,那是又一个更深的层:不再是给 Claude Code 加能力,而是把 Claude Code 的能力抽出来嵌到自己的产品里。

本教程为社区中文学习整理,非官方发布。Claude Code 属于 Anthropic。