第 16 章:插件系统
在第 15 章中,我们学习了 MCP 协议——它是一种标准化的接口,让 Claude Code 能够连接外部工具和数据源。MCP 解决的是"如何接入"的问题,但它有一个天然的边界:MCP Server 主要暴露工具和资源,不关心 Claude Code 内部的命令、Hooks、Skills 等扩展机制。
这就引出了本章的主题——插件系统。如果说 MCP 是 Claude Code 的"外部接口",插件就是它的"内部扩展框架"。通过插件,你可以为 Claude Code 添加新的 Slash Commands、自定义 Hooks、可复用的 Skills,甚至修改 Claude 的行为逻辑。
本章目标:理解插件与 MCP 的区别,掌握官方和社区插件市场的使用方式,能根据项目需求选择合适的插件,了解插件开发的基本流程。
16.1 插件架构与生命周期
什么是插件
插件是一个打包的扩展单元,它可以向 Claude Code 添加以下任何一种或多种能力:
| 扩展类型 | 说明 | 示例 |
|---|---|---|
| Slash Commands | 新的 / 命令,在对话中直接调用 | /review、/commit、/loop |
| Hooks | 在工具调用前后注入自定义逻辑 | 提交前自动运行 lint,文件写入后自动格式化 |
| Skills | 可复用的专业化能力模块 | TDD 工作流、系统化调试、代码审查 |
| Agents | 独立的子代理,执行特定任务 | 代码搜索代理、测试生成代理 |
| MCP Servers | 插件可以携带自己的 MCP 服务 | 数据库连接器、API 网关 |
一个插件可以只提供其中一种能力(比如一个 Slash Command),也可以是多种能力的组合(比如 superpowers 插件同时提供 brainstorming、writing-plans、executing-plans 等多个 Skills)。
插件 vs MCP Server:核心区别
这是很多初学者容易混淆的概念。用一句话概括:
MCP Server 是外部进程,通过标准化协议暴露工具和资源;插件是 Claude Code 内部的扩展包,可以修改 Claude 的行为本身。
| 维度 | 插件(Plugin) | MCP Server |
|---|---|---|
| 运行位置 | Claude Code 内部,随 Claude 启动 | 独立的外部进程,通过网络/stdio 通信 |
| 能做什么 | Slash Commands / Hooks / Skills / Agents | 暴露 Tools / Resources / Prompts |
| 通信方式 | Claude Code 内部 API | MCP 协议(JSON-RPC over stdio/HTTP) |
| 能否修改 Claude 行为 | ✅ 可以(通过 Hooks) | ❌ 不可以(只提供数据) |
| 能否独立运行 | ❌ 必须依附 Claude Code | ✅ 可以被任何 MCP Client 使用 |
| 安装位置 | ~/.claude/plugins/ 或 .claude/plugins/ | 注册在 settings.json 的 mcpServers 中 |
| 典型例子 | superpowers、commit-commands、code-review | 数据库 MCP、文件系统 MCP、GitHub MCP |
一个实用的判断标准:如果你想让 Claude Code 拥有一个新的"能力"(比如一种工作流),用插件;如果你想让 Claude Code 访问一个新的"数据源"(比如你的数据库),用 MCP Server。
当然,两者并非互斥。一个插件可以包含一个 MCP Server,一个 MCP Server 也可以被插件引用。但在概念上,它们解决的是不同层面的问题。
插件生命周期
一个插件从安装到使用,经历以下五个阶段:
- 发现(Discover):在官方插件市场或 ECC 社区市场中浏览,找到你需要的插件
- 安装(Install):通过 UI 界面或手动编辑配置文件安装
- 配置(Configure):设置插件所需的权限、参数、环境变量
- 激活(Activate):插件在 Claude Code 中生效,你可以使用它的命令和功能
- 维护(Maintain):更新插件版本、按需启用/禁用、不再需要时移除
插件存放位置
插件安装后,文件存放在两个位置之一:
| 安装级别 | 存放路径 | 作用范围 | 配置位置 |
|---|---|---|---|
| 全局安装 | ~/.claude/plugins/ | 所有项目可用 | ~/.claude/settings.json |
| 项目安装 | .claude/plugins/(项目根目录) | 仅当前项目可用 | .claude/settings.json |
这个两级设计与 Claude Code 的配置体系一脉相承(见第 13 章):全局配置适合个人偏好和通用工具,项目配置适合团队共享和项目特定需求。
16.2 官方插件市场
Claude Code 提供了一个内置的插件市场,你可以直接在对话界面中访问。
如何访问插件市场
有三种方式访问插件市场:
- 对话内命令:在 Claude Code 对话中输入
/Manage plugins,会打开插件管理界面 - Web 文档:访问 https://code.claude.com/docs/en/discover-plugins 查看插件的使用文档
- 官方列表:访问 https://claude.com/plugins#plugins 浏览所有官方认证的插件
官方插件 vs 社区插件
官方插件市场中的插件分为两类:
| 类型 | 来源 | 审核 | 标识 |
|---|---|---|---|
| 官方插件 | Anthropic 团队开发维护 | 官方审核 | 标记为 "Official" |
| 社区插件 | 第三方开发者提交 | 社区审核 | 标记为 "Community" |
官方插件的优势是质量有保证、更新及时、与 Claude Code 版本同步。社区插件的优势是覆盖面广、解决具体场景问题、更新迭代快。
官方插件列表
Anthropic 在 GitHub 上维护了一个官方插件仓库:https://github.com/anthropics/claude-plugins-official。这个仓库包含了 Anthropic 团队开发和维护的插件,是了解官方插件生态的最佳入口。
截至 2026 年 5 月,官方市场包含的核心插件覆盖了以下领域:
- 开发流程:代码审查、安全审查、Git 工作流
- 项目管理:任务跟踪、会话管理、上下文优化
- 配置辅助:CLAUDE.md 管理、权限配置推荐
- 效率工具:权限弹窗减少、快捷键定制
16.3 ECC 社区插件市场
什么是 ECC
ECC(Extensible Claude Code)是一个社区驱动的 Claude Code 插件市场,由社区开发者 affaan-m 发起和维护。
- GitHub 仓库:https://github.com/affaan-m/ECC
- 定位:补充官方市场的不足,提供更多社区开发的插件
- 特点:开放提交、社区审核、快速迭代
ECC 与官方市场的关系
| 维度 | 官方市场 | ECC 社区市场 |
|---|---|---|
| 维护者 | Anthropic 团队 | 社区开发者 |
| 审核机制 | 官方审核流程 | 社区 Peer Review |
| 更新频率 | 与 Claude Code 版本同步 | 社区自行决定 |
| 稳定性 | 高 | 因插件而异 |
| 覆盖面 | 核心功能 | 长尾需求、实验性功能 |
| 风险 | 低 | 中等(需要自行评估) |
ECC 的存在让 Claude Code 的插件生态更加丰富。许多实验性的、针对特定技术栈的、或者小众场景的插件首先出现在 ECC 中,经过社区验证后才有可能被官方市场收录。
如何在 ECC 中浏览和安装
- 浏览 ECC 仓库:访问 GitHub 仓库,查看
README.md中的插件列表 - 选择插件:每个插件有独立的目录,包含
plugin.json(清单文件)和使用文档 - 安装插件:
- 方法一:在 Claude Code 中执行
/Manage plugins,搜索插件名进行安装 - 方法二:手动克隆插件到
~/.claude/plugins/或.claude/plugins/目录 - 方法三:通过
settings.json中的plugins字段配置
- 方法一:在 Claude Code 中执行
社区 vs 官方:选择建议
- 优先使用官方插件:如果官方市场有满足需求的插件,优先选择。它们在稳定性、安全性和兼容性上更有保障。
- 社区插件作为补充:当官方市场没有你要的功能时,去 ECC 找。安装前检查:最近更新时间、Star 数、Issue 反馈、是否有安全审计记录。
- 实验性需求用社区插件:如果你在探索新的工作流、试验新的自动化方式,ECC 中的实验性插件是很好的起点。
16.4 插件安装与权限管理
安装流程
在插件市场中安装一个插件,通常只需要点击"Install"按钮。Claude Code 会自动完成以下步骤:
- 下载插件文件:从市场下载插件包到对应的 plugins 目录
- 解析 plugin.json:读取插件的清单文件,了解它提供的命令、Hooks、Skills
- 权限检查:分析插件需要的权限(如文件读写、网络访问、Shell 执行)
- 弹出权限确认:向你展示插件请求的权限列表,等待你确认
- 写入配置:将插件注册信息写入
settings.json - 激活插件:插件在本次会话中立即生效
全局安装 vs 项目安装
| 维度 | 全局安装 | 项目安装 |
|---|---|---|
| 配置位置 | ~/.claude/settings.json | .claude/settings.json |
| 作用范围 | 本机所有项目 | 仅当前项目 |
| 适用场景 | 通用工具(代码审查、Git 自动化) | 项目特定工具(特定框架、团队工作流) |
| 团队共享 | ❌ 不会共享给团队 | ✅ 可提交到 Git,团队共享 |
| 配置示例 | commit-commands、code-review | claude-code-setup、项目特定 MCP |
选择建议:
- 全局安装适合"每���项目都能用到"的通用插件。比如
commit-commands(所有项目都需要 Git 提交)、code-review(所有项目都需要代码审查)。 - 项目安装适合"只有这个项目需要"的特定插件。比如某个项目用到了特殊的构建工具,或者团队有特定的 Code Review 流程,相关的插件就应该安装在项目级别。
对于团队协作:项目级别的插件配置应该提交到 Git。这样新成员 clone 项目后,Claude Code 会自动加载团队约定的插件。你可以在 CLAUDE.md 中列出项目所需的插件清单(见 16.7 节)。
权限弹窗的含义
安装插件时,你会看到类似这样的权限确认:
Plugin "commit-commands" requests the following permissions:
- Bash(git:*) — Execute git commands
- Read(*) — Read files in the project
- Write(.claude/**) — Write to .claude/ directory
Allow these permissions?每个权限请求的含义:
| 权限类型 | 含义 | 风险等级 |
|---|---|---|
Read(*) | 读取项目文件 | 🟢 低(只读) |
Write(*) | 写入项目文件 | 🟡 中(修改代码) |
Edit(*) | 编辑项目文件 | 🟡 中(修改代码) |
Bash(git:*) | 执行 Git 命令 | 🟡 中(可能有副作用) |
Bash(*) | 执行任意 Shell 命令 | 🔴 高(完全 Shell 权限) |
WebFetch | 抓取网络内容 | 🟡 中(网络外联) |
WebSearch | 搜索网络 | 🟡 中(网络外联) |
Bash(curl:*) | 执行 curl 请求 | 🔴 高(可能泄露数据) |
原则:只批准插件真正需要的权限。如果一个代码审查插件请求了 Bash(curl:*) 权限——这就不正常,应该拒绝并检查这个插件的来源。
管理已安装的插件
安装后的插件可以通过以下方式管理:
1. 启用/禁用插件
在 settings.json 中,每个插件都有一个 enabled 字段:
{
"plugins": [
{
"name": "commit-commands",
"enabled": true
},
{
"name": "code-review",
"enabled": false
}
]
}将 enabled 设为 false 可以临时禁用插件而不卸载。适合以下场景:
- 你暂时不需要某个插件的功能,但可能以后还会用
- 某个插件与其他插件冲突,需要排查
- 在特定项目中不需要全局安装的某个插件
2. 移除插件
通过 /Manage plugins 界面点击"Remove",或手动从 settings.json 中删除插件配置项,并删除 plugins/ 目录下的对应文件夹。
3. 更新插件
在 /Manage plugins 界面中,已安装的插件会显示当前版本和最新版本。点击"Update"即可升级。建议定期检查更新,尤其是安全相关的插件。
16.5 推荐插件清单
以下插件来自官方市场和 ECC 社区的广泛实践。推荐度基于实用性、稳定性、社区口碑三个维度综合评定。
综合推荐表
| 插件 | 用途 | 安装级别 | 推荐度 |
|---|---|---|---|
| superpowers | 开发流程增强(brainstorm/plan/execute/review) | 全局 | ⭐⭐⭐⭐⭐ |
| commit-commands | Git 提交自动化(commit/push/PR/cleanup) | 全局 | ⭐⭐⭐⭐⭐ |
| code-review | 全面代码审查 | 全局 | ⭐⭐⭐⭐ |
| security-review | 安全漏洞扫描与审查 | 全局 | ⭐⭐⭐⭐ |
| claude-md-management | CLAUDE.md 审计与优化 | 全局 | ⭐⭐⭐ |
| code-simplifier | 代码简化与重构建议 | 全局 | ⭐⭐⭐ |
| claude-code-setup | 项目自动化推荐与配置 | 按项目 | ⭐⭐⭐ |
| fewer-permission-prompts | 智能减少权限弹窗 | 全局 | ⭐⭐⭐ |
| ralph-loop | 循环任务调度 | 全局 | ⭐⭐ |
| keybindings-help | 快捷键定制与管理 | 全局 | ⭐⭐ |
各插件详细说明
superpowers(推荐度:⭐⭐⭐⭐⭐)
用途:开发流程的完整增强套件,覆盖从创意到交付的全生命周期。
提供的 Skills:
| Skill | 作用 | 使用场景 |
|---|---|---|
brainstorming | 需求分析和方案设计 | 新功能开始前,与 Claude 一起梳理需求 |
writing-plans | 将设计转化为可执行的实现计划 | 方案确定后,生成分步实现计划 |
executing-plans | 按计划分步实现,每步设审查点 | 大功能开发,保持代码质量 |
test-driven-development | TDD 工作流:先写测试再写实现 | 后端逻辑、工具库开发 |
systematic-debugging | 系统化 Bug 排查方法论 | 遇到复杂 Bug,不是瞎试而是系统排查 |
subagent-driven-development | 多子代理并行开发 | 多个独立任务同时推进 |
verification-before-completion | 完成前自动验证 | 确保"完成"是真的完成 |
安装建议:全局安装。superpowers 是所有插件的基石——它的 Skills 改变了你与 Claude Code 协作的方式。强烈推荐作为第一个安装的插件。
配置需求:无额外配置,安装即用。
commit-commands(推荐度:⭐⭐⭐⭐⭐)
用途:Git 提交全流程自动化,从暂存到推送一气呵成。
提供的命令:
| 命令 | 作用 |
|---|---|
/commit | 分析工作区变更,生成规范的 commit message 并提交 |
/commit-push-pr | 提交、推送、创建 PR 一键完成 |
/clean_gone | 清理远程已删除的本地分支(含关联 worktree) |
为什么推荐度最高:Git 操作是每个开发者每天都要做的事情。/commit 省去了手动写 commit message 的心智负担,/commit-push-pr 更是将"改完代码 → 推送到 PR"这一高频操作简化成一句话。
安装建议:全局安装。任何项目都需要 Git 管理。
配置需求:无额外配置。但建议在项目的 CLAUDE.md 中说明 commit message 规范(如 conventional commits),claude 会遵循。
code-review(推荐度:⭐⭐⭐⭐)
用途:对代码变更进行全面的审查,覆盖正确性、安全性、可维护性、性能等多个维度。
使用方式:
/review # 审查当前分支的所有变更
/review --effort high # 深度审查(更全面,耗时更长)
/review --comment # 将审查意见以 PR 评论形式发布审查维度:逻辑正确性、安全漏洞、边界条件、性能问题、代码风格一致性、可复用性。
安装建议:全局安装。在提交 PR 之前,让 Claude 先帮你过一次代码——这是一种低成本的质量保障。
配置需求:无额外配置。
security-review(推荐度:⭐⭐⭐⭐)
用途:专门针对安全漏洞的深度审查。比 code-review 更聚焦于安全问题。
关注点:
- SQL 注入、XSS、CSRF 等常见 Web 漏洞
- 敏感信息泄露(密钥、令牌、密码硬编码)
- 不安全的依赖版本
- 权限控制缺陷
- 加密算法的不当使用
使用方式:
/security-review # 对当前分支进行安全审查安装建议:全局安装。对于涉及用户数据、支付、认证等敏感功能的项目,安全审查是必选项。
配置需求:无额外配置。
claude-md-management(推荐度:⭐⭐⭐)
用途:审计和优化项目中的 CLAUDE.md 文件。
提供的功能:
| 功能 | 作用 |
|---|---|
claude-md-improver | 扫描所有 CLAUDE.md 文件,评估质量,输出报告,自动优化 |
revise-claude-md | 从当前对话中提取经验,更新 CLAUDE.md |
使用方式:
检查一下项目的 CLAUDE.md 有没有改进空间安装建议:全局安装。适合经常维护多个项目的开发者。
配置需求:无额外配置。
code-simplifier(推荐度:⭐⭐⭐)
用途:审查代码变更的可简化性——找出重复逻辑、过度抽象、不必要的复杂度。
与 code-review 的区别:code-review 关注"对不对",code-simplifier 关注"能不能更简单"。
安装建议:全局安装。在重构阶段特别有用。
claude-code-setup(推荐度:⭐⭐⭐)
用途:分析项目结构,推荐应该使用哪些 Claude Code 功能(Hooks、Subagents、Skills、Plugins、MCP Servers)。
使用方式:
帮我分析一下这个项目适合用哪些 Claude Code 功能安装建议:按项目安装。在新项目接入 Claude Code 时使用一次,获得自动化推荐后可以选择性保留或移除。
fewer-permission-prompts(推荐度:⭐⭐⭐)
用途:扫描你的对话记录,找出频繁触发的权限弹窗,自动生成 allowlist 规则来减少不必要的确认。
工作原理:
- 分析历史对话中的权限弹窗
- 识别出"每次都要确认但实际上是安全的"操作
- 将建议的 allow 规则写入
.claude/settings.json
安装建议:全局安装。使用 Claude Code 一段时间后(1-2 周),运行一次分析,之后可以禁用。
配置需求:需要允许插件写入 .claude/settings.json。
ralph-loop(推荐度:⭐⭐)
用途:循环任务调度。让 Claude Code 以固定间隔执行某个任务。
使用方式:
/ralph-loop 每 5 分钟检查一次 CI 状态安装建议:全局安装。适合需要持续监控的场景(CI 状态、部署进度、日志监控)。
keybindings-help(推荐度:⭐⭐)
用途:自定义键盘快捷键。如果你习惯用键盘操作,这个插件可以帮你定制快捷键绑定。
安装建议:全局安装。适合键盘流用户。
插件组合建议
根据你的使用深度,推荐不同的插件组合:
入门组合(刚开始使用 Claude Code):
superpowers + commit-commands这两个插件覆盖了最核心的需求:工作流增强和 Git 自动化。
标准组合(日常开发):
superpowers + commit-commands + code-review + fewer-permission-prompts加上代码审查和权限优化,形成完整的日常开发闭环。
专业组合(团队协作 / 高质量项目):
superpowers + commit-commands + code-review + security-review + claude-md-management + claude-code-setup完整覆盖开发流程、代码质量、安全审查和项目配置管理。
16.6 插件开发入门
如果你需要的功能没有现成的插件,或者想为团队定制专属的工作流,你可以自己开发一个插件。
插件结构概览
一个典型的插件文件结构:
my-plugin/
├── plugin.json # 插件清单(必需)
├── commands/ # Slash Commands 定义
│ └── my-command.md
├── hooks/ # Hooks 处理器
│ └── pre-commit.js
├── skills/ # Skills 定义
│ └── my-workflow.md
├── agents/ # 子代理定义
│ └── searcher.md
└── README.md # 使用文档plugin.json:插件清单
plugin.json 是插件的"身份证",定义了插件的基本信息和它提供的所有能力:
{
"name": "my-plugin",
"version": "1.0.0",
"description": "A sample Claude Code plugin",
"author": "your-name",
"license": "MIT",
"commands": [
{
"name": "my-command",
"description": "Does something useful",
"file": "commands/my-command.md"
}
],
"hooks": [
{
"event": "PreToolUse",
"tool": "Write",
"handler": "hooks/pre-write.js"
}
],
"skills": [
{
"name": "my-workflow",
"description": "A custom workflow",
"file": "skills/my-workflow.md"
}
]
}关键字段说明:
| 字段 | 必需 | 说明 |
|---|---|---|
name | ✅ | 插件唯一标识,安装后不可更改 |
version | ✅ | 语义化版本号(SemVer) |
description | ✅ | 简短的功能描述 |
commands | ❌ | 插件提供的 Slash Commands 列表 |
hooks | ❌ | 插件注册的事件钩子 |
skills | ❌ | 插件包含的 Skills |
agents | ❌ | 插件包含的子代理 |
Hooks vs Commands vs Skills 在插件中的角色
这三种扩展机制在插件中扮演不同的角色:
| 扩展机制 | 触发方式 | 作用范围 | 典型用途 |
|---|---|---|---|
| Commands | 用户手动输入 /xxx | 单次对话 | 执行特定操作(提交、审查、清理) |
| Hooks | Claude Code 事件自动触发 | 全局生命周期 | 在操作前后注入逻辑(格式化、检查) |
| Skills | Claude 根据任务自动选择 | 按需激活 | 提供专业领域的工作流(TDD、调试) |
一个实用的理解方式:
- Commands 是你告诉 Claude "做什么"的入口
- Hooks 是 Claude 做事时"自动执行"的检查点
- Skills 是 Claude 处理特定任务时的"方法论"
最小插件示例
下面是一个最简单的插件——它只提供一个 /hello 命令:
plugin.json:
{
"name": "hello-world",
"version": "1.0.0",
"description": "A minimal Claude Code plugin that says hello",
"author": "your-name",
"commands": [
{
"name": "hello",
"description": "Say hello to the user",
"file": "commands/hello.md"
}
]
}commands/hello.md:
# /hello
Say hello to the user and show current project info.
## Steps
1. Greet the user by checking the git config user name:
```bash
git config user.nameShow the current working directory and git branch.
Summarize the project by reading CLAUDE.md if it exists.
这个例子展示了插件开发的核心思想:**Commands 是一份给 Claude 的"操作手册"**——它告诉 Claude 当用户输入 `/hello` 时,应该按什么步骤执行。
### 测试和调试插件
开发插件时,测试流程如下:
1. **本地安装**:将插件目录复制到 `~/.claude/plugins/`(全局)或 `.claude/plugins/`(项目)
2. **注册插件**:在 `settings.json` 中注册:
```json
{
"plugins": [
{
"name": "hello-world",
"source": "local",
"path": ".claude/plugins/hello-world"
}
]
}- 重启 Claude Code:让插件加载生效
- 测试命令:在对话中输入
/hello,观察 Claude 的行为 - 检查日志:如果命令不生效,检查 Claude Code 的输出日志中的错误信息
调试建议:
- 从最简单的单个 Command 开始,验证单个功能
- 逐步添加 Hooks、Skills,每次只加一种新能力
- 在开发阶段使用项目级安装(
.claude/plugins/),避免影响其他项目 - 使用 Git 管理插件的版本,方便回滚
发布到插件市场
开发完成并通过测试后,你可以将插件发布到社区:
- 准备文档:编写
README.md,包含用法、配置说明、示例截图 - 提交到 ECC:Fork ECC 仓库,添加你的插件目录,创建 Pull Request
- 社区审核:其他开发者会 Review 你的代码和文档
- 合并后可用:审核通过后,你的插件会出现在 ECC 市场中,其他人可以搜索和安装
如果插件质量高、用户反馈好,未来有机会被官方市场收录。
16.7 插件管理最佳实践
少即是多
只安装你真正需要的插件。 每一个插件都在消耗资源、增加启动时间、引入潜在的兼容性问题和安全风险。
一个简单的自检清单:
- [ ] 这个插件解决的问题,我真的经常遇到吗?
- [ ] 有没有更简单的方式解决?(比如一个 Slash Command 或一段 CLAUDE.md 指令)
- [ ] 如果 2 周不用一次,是不是可以卸载?
作为参考,大多数高效用户的插件数量在 5-8 个左右。超过 10 个就需要审视是否有冗余。
全局 vs 项目的选择策略
| 插件特征 | 安装级别 | 示例 |
|---|---|---|
| 所有项目都能用到的通用工具 | 全局 | commit-commands、code-review |
| 只与特定技术栈相关 | 项目 | 某个框架专用的代码生成器 |
| 团队约定使用的工具 | 项目(提交到 Git) | 团队统一的 Code Review 流程 |
| 个人偏好工具 | 全局 | keybindings-help、fewer-permission-prompts |
| 实验性尝试 | 项目(先试用) | 新的工作流插件 |
一个实用的原则:先在项目级试用 1-2 周,确认真实需要后再升级到全局安装。
定期审查
建议每 2-4 周做一次插件审查:
- 检查使用频率:过去 2 周用过这个插件吗?没用过的考虑禁用
- 检查更新:打开
/Manage plugins,查看是否有新版本可用 - 检查权限:插件的权限是否仍然合理?有没有"权限膨胀"?
- 检查冲突:新安装的插件是否与已有插件冲突?
权限审查
每个插件在安装时都请求了特定的权限。随着插件更新,它可能请求新的权限。定期检查:
// 在 settings.json 中审查插件的权限配置
{
"plugins": [
{
"name": "my-plugin",
"enabled": true,
"permissions": {
"allow": ["Bash(git:*)", "Read(*)"] // 审查:这些权限是否都必要?
}
}
]
}危险信号:如果一个插件请求了以下权限但你找不到合理的原因,应该禁用并调查:
Bash(curl:*)/Bash(wget:*)— 网络外联Bash(sudo:*)— 提权操作Write(**/*.env)— 写入环境变量文件Read(**/*.pem)— 读取私钥文件
版本更新
插件的版本更新可能带来新功能,也可能引入 Breaking Changes:
- 安全相关插件:尽快更新。安全审查规则需要保持最新。
- 核心工作流插件(如 superpowers、commit-commands):在非关键时段更新,更新后测试一下核心流程。
- 辅助工具插件:可以累积几个版本一起更新,减少中断。
建议在 CLAUDE.md 或项目文档中记录当前使用的插件版本,方便团队同步和问题回溯。
团队同步
对于团队项目,需要确保所有成员使用相同的插件配置:
项目级插件配置提交到 Git:
.claude/settings.json中的plugins配置随项目代码一起版本管理在 CLAUDE.md 中记录插件清单:
markdown## 必需插件 本项目依赖以下 Claude Code 插件,请确保已安装: | 插件 | 版本 | 用途 | |------|------|------| | commit-commands | >=2.0.0 | Git 提交自动化 | | code-review | >=1.5.0 | 代码审查 | | claude-code-setup | latest | 项目配置推荐 | 安装方式:在 Claude Code 中执行 `/Manage plugins` 搜索并安装。新成员入职时检查:确保新成员的 Claude Code 环境安装了项目必需的插件
故障排查
当插件出现问题时,按以下顺序排查:
- 禁用所有插件,逐个启用:定位是哪个插件导致的问题
- 检查插件版本:是否是最新版本?是否与其他插件版本冲突?
- 查看 Claude Code 日志:错误信息通常记录在输出日志中
- 检查 settings.json 语法:JSON 格式错误会导致插件加载失败
- 重新安装插件:删除插件目录和配置,重新安装
- 查阅插件的 GitHub Issues:看看其他用户是否遇到相同问题
16.8 本章小结
本章是生态篇的第二章,承接 MCP 协议的"外部连接",聚焦于插件系统的"内部扩展"。
核心知识回顾
- 插件 vs MCP 的区分:插件修改 Claude 的行为(Commands/Hooks/Skills),MCP 连接外部数据源(Tools/Resources)。两者互补,解决不同层面的问题。
- 插件生命周期:发现 → 安装 → 配置 → 激活 → 维护。一个完整的循环。
- 双市场生态:官方市场保证质量和稳定性,ECC 社区市场提供多样性和实验性。优先官方,社区补充。
- 安装级别策略:全局用于通用工具,项目用于团队共享和特定需求。先用项目试用,再升级全局。
- 十大推荐插件:superpowers 和 commit-commands 是基石,code-review 和 security-review 是质量保障,其余按需选用。
- 插件开发基础:plugin.json 是入口,Commands/Hooks/Skills 是三种核心扩展机制。从最简单的 Command 开始。
- 六条管理实践:少即是多、分级别安装、定期审查、权限审查、版本更新、团队同步。
从插件到 Skills
插件是容器,Skills 是内容。在 16.5 节中我们看到,superpowers 插件提供了七个 Skills,每一个都是一种专业的工作流。但 Skills 也可以脱离插件独立存在——你可以创建自己的 Skill 而不需要发布成一个完整的插件。
这就是下一章的主题:第 17 章:Skills 体系。我们将深入 Skills 的设计思想——它如何让 Claude Code 从"通用助手"变成"领域专家",以及如何创建、定制和组合 Skills,打造属于你自己的 AI 工作流。
章节小结:插件是 Claude Code 生态系统中最活跃的部分。官方市场和 ECC 社区共同构成了一个繁荣的扩展生态。掌握了插件的选择、安装、管理方法,你就拥有了自由定制 Claude Code 能力边界的手段。但请记住 16.7 节的第一条原则——少即是多。好的插件配置不是"装了多少",而是"每个都真正常用"。
下一章,我们将深入 Skills 体系的设计哲学和实践,学习如何让 Claude Code 按照你定义的方法论工作。