Claude Code 原理与实战

AI 编程助手 / 终端代理 / LESSON 04

Hooks、MCP、Subagents 与自动化

区分 hooks、MCP、subagents、skills、plugins 和非交互模式,让扩展能力服务真实工作流。

阅读时间
18 分钟
学习路径
Claude Code 原理与实战
内容来源
Claude Code 专题教程

预计阅读时间: 18 分钟

Claude Code 的扩展能力主要围绕四件事:让代理遵守项目规则、连接外部上下文、在生命周期里插入检查、把复杂工作拆给更专门的子代理。对应能力包括 CLAUDE.md、settings、hooks、MCP、subagents、skills、plugins 和非交互模式。

这一篇讲如何选择。

扩展能力选择表

需求适合工具说明
仓库规则CLAUDE.md项目级记忆和工作约定
用户或项目配置settings权限、工具、环境等配置
外部系统上下文MCPGitHub、文档、设计、内部工具
生命周期检查hooks命令前后、提示提交、会话结束等
专门角色subagents测试、审查、调研、排障等分工
可复用步骤skills把流程固化为可调用能力
非交互任务headless/CLICI、脚本、批处理

不要一开始全开。先把一条真实工作流跑顺,再扩展。

Hooks:把机械检查前置

Hooks 适合做稳定、机械的事情:

  • 提示提交前扫描敏感信息。
  • 命令执行前拦截危险命令。
  • 修改后提醒运行格式化或测试。
  • 会话结束后生成摘要。
  • 对特定目录添加上下文。

不适合做复杂产品判断,例如“这个设计好不好”。那应该由人和 review 流程处理。

一个好 hook 的特点:

输入短、判断确定、失败可解释、不会偷偷产生业务副作用。

MCP:不要复制粘贴活数据

当信息在外部系统里,MCP 是更自然的方式。例如:

  • GitHub issue 和 PR。
  • Notion 或 Confluence 文档。
  • Figma 设计稿。
  • OpenAI/Anthropic 官方文档。
  • 内部日志或监控。

MCP 接入前要问:

这个上下文是否经常变化?
是否多人需要复用?
是否比复制粘贴更准确?
工具是否有清楚的权限边界?

如果答案都是“是”,值得接入。

Subagents:把噪音任务分出去

Subagents 适合处理范围清楚、角色明确的子任务:

  • 测试代理:只负责跑测试和分析失败。
  • Review 代理:只负责找 diff 风险。
  • 文档代理:只负责同步 docs。
  • 调研代理:只负责查官方文档并给出处。
  • 排障代理:只负责整理日志和假设。

主线程应该保留最终决策和集成工作,不要把所有上下文都分散出去。

Skills 与 Plugins

Skills 适合固化重复流程,例如:

学习内容发布:
1. 同步 Markdown。
2. 生成图。
3. 更新 metadata。
4. build。
5. 检查 sitemap。
6. 部署。

Plugins 更适合把 skills、commands、MCP、hooks 和资产打包分发。个人或单项目阶段,先写 skill 更轻。

非交互模式

非交互模式适合稳定任务:

  • 生成 release notes。
  • 检查链接。
  • 跑固定 lint/test。
  • 对一批文件做机械迁移。
  • 周期性生成报告草稿。

不适合还需要大量澄清和判断的任务。自动化前先手工跑通三次,是一个不错的门槛。

本站可以自动化什么

对 AIGC Bot 来说,最值得自动化的工作流是:

  • 每周日生成 AI/大数据/可观测周报草稿。
  • 学习文章同步和静态构建检查。
  • 新页面 SEO 检查。
  • 部署后 live route 检查。
  • OpenSpec/Superpowers 文档同步提醒。

这些任务都有明确输入、输出和检查点,适合逐步做成 skills 或 scheduled workflows。

参考资料