第 21 章:Skill / Plugin / Output Style 三扩展点 — 基于源码理解扩展点
本章是《深入 Claude Code 源码》系列第 21 章。前面 20 章我们深入分析了 Claude Code 的内部架构,现在是时候"反过来用"了 —— 站在扩展开发者的视角,理解如何编写自定义 Agent、Skill、Plugin 和 Hook 脚本。本章的独特价值在于:每一个配置字段、每一个行为约定,我们都能追溯到源码中的具体实现。
本章是《深入 Claude Code 源码》系列第 20 章。我们将深入 Hooks 系统的完整实现,揭示 Claude Code 如何让用户在 AI 生命周期的关键节点注入自定义逻辑,以及这套系统在安全性、可扩展性和性能上的精巧设计。 想象一个场景:你希望 Claude Code 在每次执行 Write 工具后自动运行 prettier 格式化代码,…
本章是《深入 Claude Code 源码》系列第 19 章。我们将深入权限系统的完整架构:从权限模式、规则体系、决策管线到 AI Classifier 辅助判断,揭示一个生产级 AI Agent 如何在"自动化"与"安全"之间找到平衡。 传统 CLI 工具的权限模型很简单——用户敲什么命令就执行什么命令,责任完全在用户。但 AI Agent 改变了这…
本章是《深入 Claude Code 源码》系列第 18 章。我们将剖析 Claude Code 如何实现 Model Context Protocol(MCP),包括类型系统设计、多层配置合并、传输层适配、连接生命周期管理、Tool 发现与代理,以及认证体系。 Claude Code 内置了 40+ 个工具(BashTool、FileEditTool…
本章是《深入 Claude Code 源码》系列第 17 章。前面几篇我们都在讨论「一次对话里模型怎么把事情做完」。这一篇换一个角度:如果根本没人盯着这个 REPL,事情还能继续往前推吗? 答案藏在两块看起来不相干、骨子里互相支撑的代码里: 我们先解释为什么把这两块放在同一章,然后分别拆开看,最后再回到引言里的问题。
本章是《深入 Claude Code 源码》系列第 16 章。我们将深入分析 Claude Code 如何通过一套统一的任务系统,管理从后台 Shell 命令到多 Agent 并行协作的所有异步工作。 速查表:见 附录 E · TaskType 谱系(wire 字面量 / feature flag / 注册路径一表对照)。
本章是《深入 Claude Code 源码》系列第 15 章。我们将深入 6 个内置 Agent 的 System Prompt 设计,揭示如何通过 prompt 工程将同一套工具系统塑造出截然不同的 Agent 人格与行为模式,并解析自定义 Agent 的 markdown frontmatter 配置全貌。
本章是《深入 Claude Code 源码》系列第 14 章。我们将深入剖析 Agent 子系统的完整架构:从 Agent 定义的数据结构与加载机制,到 runAgent() 的完整生命周期,再到 createSubagentContext() 如何实现 context 隔离与选择性共享。 当你让 Claude Code 帮你"重构整个模块的测试"时,…
本章是《深入 Claude Code 源码》系列对工具家族的第三次深入。前两篇分别讲了 Tool 协议骨架,以及文件、代码与 LSP 一族围绕"先读后写"这条暗规的工程一致性。这一篇把镜头掉转 180°:不再看 Agent 怎么动本地代码,而是看它怎么开口——怎么往外抓一段网页、怎么把自己挂到 cron 上、怎么和另一个 Agent 互相通讯、怎么向用…
本章是《深入 Claude Code 源码》系列对工具家族的第二次深入。上一篇剖完了 Tool 接口、buildTool() 与 ToolSearch 的抽象骨架,这一篇把镜头收近到八个具体工具上:FileRead / FileWrite / FileEdit / NotebookEdit / Glob / Grep / LSPTool / REPLT…
本章是《深入 Claude Code 源码》系列第 11 章。BashTool 是 Claude Code 中代码量最大、安全逻辑最复杂的单个工具,总计 12,411 行代码。我们将从命令语义分析、多层安全防线、沙箱执行、输出处理、权限匹配五个维度,完整剖析它如何让 AI 安全地执行 Shell 命令;末尾再以 PowerShellTool 作为 Wi…
本章是《深入 Claude Code 源码》系列第 10 章。我们将深入工具系统的核心设计:从 Tool 接口的核心方法,到 buildTool() 的 builder 模式,到 tools.ts 的注册表架构,再到 ToolSearch 的延迟加载机制,揭示一个生产级 AI Agent 如何管理一整族内置工具(具体清单与分类见 附录 A)和无限数量的…