Dive into Claude Code 扩展机制详解Hooks、Skills、Plugins、MCP四大注入点全解【免费下载链接】Dive-into-Claude-CodeA Systematic Analysis and Discussion of Claude Code for Designing Todays and Future AI Agent Systems项目地址: https://gitcode.com/gh_mirrors/di/Dive-into-Claude-Code想给 Claude Code 加装备、装技能、接外部工具却分不清 Hooks、Skills、Plugins、MCP 各自的分工Dive-into-Claude-Code 项目对 Claude Code 源码做了系统性架构分析把它的Claude Code 扩展机制讲得明明白白。本文带你用一篇的时间读懂 Hooks 钩子、Skills 技能、Plugins 插件、MCP 服务器这四大扩展注入点——它们分别插在智能体循环的哪一步、各解决什么问题、新手该如何组合使用。 一句话先记住4 种扩展机制只作用于 3 个注入点。搞懂这 3 个点四种机制就不再是四把散落的钥匙。一张图看懂三个注入点与四大扩展机制智能体循环每一轮都走三步扩展机制就挂在这三步上注入点控制什么对应机制assemble()模型看到什么CLAUDE.md、Skill 描述、MCP 资源、Hook 注入的上下文model()模型能调用哪些工具内置工具、MCP 工具、SkillTool、AgentToolexecute()动作是否 / 如何执行权限规则、PreToolUse / PostToolUse 钩子、Stop 钩子Hooks、Skills、Plugins、MCP 并不是四个独立系统而是分别落在这三个位置上的可插拔积木——这正是整个扩展体系的核心心智模型。扩展机制在整个系统里的位置从整体看各入口CLI、SDK、IDE最终都汇聚到同一个智能体循环循环向工具发起请求经权限系统放行后才进入执行环境文件 / Shell / Web / MCP。四大扩展机制正是在工具 权限 执行环境这一段上做文章它们扩展工具面、改写动作、补充上下文而不改动循环本身。注入点一assemble() —— 决定模型看到什么模型每一轮看到的内容由多个来源拼装而成扩展机制能往里面塞东西Skills以技能描述常驻上下文让模型知道我有这个技能需要时可调用。MCP 服务器可推送资源与提示词非工具类内容。HooksUserPromptSubmit、SessionStart等钩子可在每轮或会话开始时注入一段上下文。Output Style替换响应格式的系统块。 关键认知注入上下文 ≠ 强制执行。CLAUDE.md、Skill 描述都走用户上下文引导模型但真正卡住动作的是权限检查与沙箱。指令与约束要分开看。注入点二model() —— 决定模型能调用什么这一层扩展的是工具面tool surface。工具池按 5 步管道组装基础枚举最多 54 个工具→ 模式过滤 → 拒绝规则预过滤 → MCP 集成 → 去重MCP 服务器是这里的主力外部工具通过 stdio、SSE、HTTP、WebSocket 等 7 种传输接入与内置工具放进同一个扁平工具池模型无感。SkillTool是元工具模型按名字拉起某个 Skill。AgentTool是另一个元工具模型派生一个子智能体去干活。注入点三execute() —— 决定动作怎么跑这一步是安全与行为的地盘也是 Hooks 最显身手的地方。每次工具调用都先过策略核心Policy Core规则Rules 模式Modes 钩子Hooks共同产出 Allow / Ask / Deny 的决策。Hooks 在这里能做PreToolUse 钩子批准 / 拦截 /改写一次工具调用。PostToolUse 钩子改写输出、或向模型追加上下文。Stop / SubagentStop 钩子模型想停时强制循环继续。Notification 钩子给用户通知挂外部副作用。Claude Code 共有27 个钩子事件分 5 类用4 种执行方式跑起来shell 命令、LLM 评估、webhook、subagent 验证器——既能纯脚本拦截也能再叫一个 LLM 来评审这次调用。四大机制逐个拆解Hooks钩子生命周期事件 可编程拦截Hooks 是最底层也最灵活的扩展点——直接在execute()上设卡适合审计与改写参数、根据运行时状态改变模型行为、把安全策略从硬编码变成外部化可热插拔。⚠️ 提醒能注入上下文的 Hook 会占用 token会调用模型的 Hook 还会产生一次独立推理开销。按需开启别全开。Skills技能按需加载的能力包Skill 是一个SKILL.md文件带 15 个 YAML frontmatter 字段走先露脸、再上工路线描述常驻上下文——让模型知道有这个技能低成本被调用时才注入完整指令——把 SKILL.md 正文塞进上下文执行。这就是 Skills 相比把规则全写进 CLAUDE.md的优势渐进式上下文成本用到才加载不占常驻 token。SkillTool vs AgentTool是新手最容易混的一对SkillTool技能AgentTool子智能体做法把指令注入当前对话在隔离的新对话里干活上下文与主对话共享独立侧链转录稿适合给当前任务加知识 / 加流程把整块子任务委派出去、隔离上下文简单说Skill 是教模型怎么做Agent 是派别人去做。Plugins插件把一切打包分发前三种机制是零件Plugins 则是把零件装进同一个盒子一起发货。一个插件清单manifest可打包10 种组件类型命令、智能体、Skills、Hooks、MCP 服务器、LSP 服务器、输出样式、通道、设置、用户配置。对新手最实用的价值在于**一次安装、多机制就位**一个插件可同时带上 Skill Hook MCP 服务器省去逐个配置。MCP模型上下文协议连接外部世界的标准协议MCP 是**最向外**的机制把任何外部服务数据库、API、浏览器、内部系统变成模型可直接调用的工具支持7 种传输类型stdio、SSE、HTTP、WebSocket、SDK、IDE 等MCP 工具与内置工具进入同一个扁平工具池除工具外还能推送资源 / 提示词作用于assemble()。 安全提示MCP 服务器在信任对话框弹出之前就可能已执行——这是 Claude Code 曾暴露的两个 CVE 的共同根因。接入第三方 MCP 时务必确认来源与版本。四大机制怎么选一张速查表机制一句话定位主要注入点典型用途Hooks生命周期钩子可编程拦截execute()审计、改写、强制继续Skills按需加载的能力包assemble()注入专业知识 / 流程Plugins打包一切的发行盒三处皆可一次安装多种扩展MCP连接外部世界的标准协议model() assemble()接入外部服务 / 工具新手组合拳建议想改行为 / 加安全→ 先用 Hooks想加知识 / 加流程→ 用 Skills想接外部工具 / 服务→ 上 MCP想把上面几样打包分享给团队→ 打成 Plugin。延伸阅读与资料来源想深入源码级细节推荐按这个顺序读架构总览含可扩展性章节四大机制对照表docs/architecture_zh.md项目主 README关键亮点与阅读指南README_zh.md完整论文 PDFpaper/Dive_into_Claude_Code.pdf社区项目与研究索引docs/related-resources_zh.md 核心回顾Claude Code 的扩展不是四个孤立功能而是4 种机制 × 3 个注入点的组合矩阵。记住assemble() / model() / execute()你就能把任意扩展机制准确归位不再凭感觉配置。【免费下载链接】Dive-into-Claude-CodeA Systematic Analysis and Discussion of Claude Code for Designing Todays and Future AI Agent Systems项目地址: https://gitcode.com/gh_mirrors/di/Dive-into-Claude-Code创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?