Claude Code 扩展体系总览
Claude Code 扩展体系包含多种组件,通过模块化设计满足不同场景需求。核心概念包括:MCP(协议适配器)、Skills(知识包)、Commands(手动触发脚本)、Hooks(自动化脚本)、Agents(子代理)和Plugins(可分发集合)。这些组件可通过Marketplace(插件商店)统一管理,支持官方/私有目录。系统采用层级结构,Plugin可打包其他所有组件,支持团队共享配置。典
·
Claude Code 扩展体系总览
📦 概念对比表
| 概念 | 一句话定义 | 触发方式 | 使用场景 | 谁来决策 |
|---|---|---|---|---|
| MCP | 连接外部工具/API 的协议适配器 | 自然语言 / 自动 | 接入 GitHub、数据库、Jira、Slack 等外部服务 | Claude 决定调用哪个工具 |
| Skills | 教 Claude 可复用工作流的 Markdown 知识包 | Claude 根据上下文自动加载 | 代码审查规范、PDF 处理、迁移流程等固定知识 | Claude 自主判断激活 |
| Commands | 用 /命令名 手动触发的工作流脚本 |
用户手动 输入 /command |
一键 PR review、onboard 流程、部署等重复操作 | 用户主动触发 |
| Hooks | 在生命周期事件上自动执行的 shell 脚本 | 系统事件自动触发(写文件前/后等) | 自动 lint、阻止危险命令、测试门控、发通知 | 系统强制执行,Claude 无法干预 |
| Agents(Subagents) | 有独立系统提示和权限的专职子 Agent | 被主 Agent 调用或 /agent 命令 |
安全审查、性能测试、专项分析等隔离任务 | 主 Agent 或用户调度 |
| Plugins | 打包上述所有组件的可分发集合 | claude plugin install |
团队共享配置、社区扩展市场 | 安装后按各组件规则触发 |
| Marketplace | 托管和分发 Plugin 的插件商店目录 | claude plugin marketplace add |
浏览/安装社区或官方 Plugin,构建私有插件目录 | 用户选择安装,系统自动更新 |
🔗 层级关系
Marketplace(商店目录)
└── 分发 → Plugin(可安装包)
├── 包含 → MCP(外部服务接入)
├── 包含 → Commands(手动触发工作流)
├── 包含 → Skills(AI 知识包)
├── 包含 → Hooks(生命周期自动化)
└── 包含 → Agents(专职子 Agent)
🎯 选型决策速查
| 需求场景 | 推荐方案 |
|---|---|
| 接入 GitHub / 数据库 / Jira | MCP |
| 封装团队代码规范/流程知识 | Skills |
| 手动触发固定工作流(如跑 PR review) | Commands |
| 每次写文件后自动 lint | Hooks (PostToolUse) |
阻止执行危险命令(如 rm -rf) |
Hooks (PreToolUse) |
| 需要隔离上下文的专项分析任务 | Agents |
| 打包以上配置分发给团队 | Plugin |
| 打包Plugins分发给大众 | Marketplace |
🏪 Marketplace 详解
Marketplace 本质是一份 Plugin 目录(catalog),分两步使用:先 add 注册商店(仅获取目录,不安装任何插件),再从目录中按需 install 具体插件——就像先添加 App Store,再选择下载应用。
| 属性 | 说明 |
|---|---|
| 官方 Marketplace | claude-plugins-official,Claude Code 启动时自动可用,由 Anthropic 维护 |
| Demo Marketplace | anthropics/claude-code,需手动添加,含示例插件 |
| 私有 Marketplace | 企业可自建(如通过 LiteLLM),claude plugin marketplace add <url> 接入 |
| 自动更新 | 官方 Marketplace 默认开启自动更新;第三方/本地开发 Marketplace 默认关闭 |
| Plugin 分类 | 官方目录分为三类:LSP 代码智能、内部工作流工具、外部服务集成 |
⚡ Hooks 可用事件表
| 事件名 | 触发时机 |
|---|---|
PreToolUse |
工具执行前 |
PostToolUse |
工具执行后 |
SessionStart |
会话开始时 |
SessionEnd |
会话结束时 |
UserPromptSubmit |
用户提交 prompt 时 |
Stop |
Claude 准备停止时 |
SubagentStop |
子 Agent 停止时 |
PreCompact |
上下文压缩前 |
Notification |
通知事件 |
📁 目录文件结构
项目级(.claude/ 目录)
your-project/
├── CLAUDE.md # 项目记忆/上下文
├── .mcp.json # MCP 服务器配置(提交到 git,团队共享)
└── .claude/
├── settings.json # Hooks、权限配置
├── settings.local.json # 个人本地配置(gitignored)
├── agents/ # 子 Agent 定义
│ └── code-reviewer.md
├── commands/ # Slash 命令(/command-name)
│ ├── pr-review.md
│ └── onboard.md
└── skills/ # Skills 目录
└── my-skill/
└── SKILL.md
Plugin 标准结构
plugin-name/
├── .claude-plugin/
│ └── plugin.json # 插件元数据(必须)
├── commands/ # Slash 命令(.md 文件)
├── agents/ # 专职子 Agent(.md 文件)
├── skills/ # Agent Skills
│ └── skill-name/
│ └── SKILL.md # 每个 skill 必须有此文件
├── hooks/ # 事件处理器
│ ├── hooks.json
│ └── scripts/
│ ├── validate.sh
│ └── check-style.sh
├── .mcp.json # MCP 服务器定义
├── scripts/ # 通用脚本
└── README.md
更多推荐



所有评论(0)