查看扩展能力地图
基于官方 Claude Code 扩展教程,面向新手讲清 CLAUDE.md、Skills、Subagents、MCP、Hooks、Plugins 和 Agent SDK 的分工。
Claude Code 的扩展能力不是一组互相替代的功能,而是接在 agent loop 不同位置上的组件。新手最重要的不是全部配置一遍,而是知道“遇到什么问题该加哪一层”。
先理解:每层解决什么问题
CLAUDE.md 和 .claude/rules/ 负责每次会话都应该知道的项目约定。
Skills 负责按需加载的知识、流程和可调用工作流。
MCP 负责连接外部服务、工具和数据入口。
Subagents 负责在隔离上下文里做专门任务,例如探索、审查、调研。
Hooks 负责生命周期事件上的确定性自动化,例如阻止危险命令、格式化、通知、审计。
Plugins 负责把 skills、agents、hooks、MCP 打包分发。
Agent SDK 负责把 Claude Code agent loop 嵌入自己的程序或产品。
怎么判断该加哪一层
如果 Claude 第二次忘记同一条项目约定,把它写进 CLAUDE.md 或 .claude/rules/。
如果你第三次复制同一个 checklist,把它做成 Skill。
如果一个 side task 会读大量文件,但你只需要结论,把它交给 Subagent。
如果某个动作必须每次都执行,例如格式化、阻止危险命令、发通知,就用 Hook。
如果你需要让 Claude 访问外部系统、数据库、文档源或内部工具,用 MCP。
如果这些能力要跨仓库或团队分发,再做 Plugin。
如果你要把 Claude Code 做进产品或后台服务,才看 Agent SDK。
新手常见坑
- 把所有规则都塞进
CLAUDE.md:上下文变重,规则也更容易冲突。 - 把 Skill 当强制规则:Skill 是按需能力,不是硬约束。
- 用提示词代替 Hook:必须执行的动作应该用确定性自动化。
- 一开始就做 Plugin:还没稳定的能力不该先分发。
- 过早使用 SDK:TUI / CLI 还没跑通时,SDK 只会增加调试层。
推荐落地顺序
先写 CLAUDE.md,只放项目入口、命令、禁止事项。
再用 .claude/rules/ 拆语言、目录或文件类型规则。
然后把重复任务和长参考资料沉淀成 Skills。
再用 Subagents 做隔离探索、审查和调研。
随后用 Hooks 做格式化、审计、阻断和通知。
需要外部系统时接 MCP。
能力稳定并需要共享后,才打包 Plugins。
最后才考虑 Agent SDK 做产品化和服务化。
怎么验收
你能说清每个扩展解决的问题,而不是只知道它的名字。
你能把“规则、流程、工具、自动化、分发、产品化”分到不同层。
你能删掉一个扩展层后说明会失去什么能力。
你能确认强制安全边界不只写在 prompt 或 CLAUDE.md 里。