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)