Claude Code Skills Hooks 与 MCP

笔记/AI编程/Claude Code实战/Claude Code Skills Hooks 与 MCP

背景与动机#

Claude Code 的扩展能力大致可以分成三类:Skills、Hooks 和 MCP。它们都能让 Agent 更强,但解决的问题不同。

简单理解:

Skills = 把经验写成可复用工作流
Hooks = 在关键时机自动执行规则
MCP = 让 Agent 调用外部工具或数据源

不要把所有问题都塞进同一种机制。选错扩展方式,会让系统变复杂,也更难调试。

img
img

Skills:沉淀重复经验#

Skills 适合放“人经常解释给 Agent 的流程”。

例如:

  • 写技术博客的结构和风格。
  • 做代码审查的检查维度。
  • 修 Bug 时的排查顺序。
  • 生成图表或文档的格式要求。

Skill 重点是指导 Agent 如何思考和执行,不一定需要外部 API。

适合用 Skill 的判断标准:

  • 这件事会反复发生。
  • 规则比较稳定。
  • 需要多步骤流程。
  • 只靠一句提示词容易遗漏。

Hooks:固定时机的自动动作#

Hooks 适合处理“某个事件发生时,总要做的事”。

例如:

  • 执行命令前检查是否危险。
  • 修改文件后运行格式检查。
  • 任务结束前提醒输出测试结果。

Hooks 的优势是稳定触发,缺点是容易隐藏副作用。Hook 里不要放需要复杂判断的业务流程,否则排查时很难分清是 Agent 决策还是 Hook 自动动作。

MCP:连接外部世界#

MCP 适合让 Agent 安全、结构化地访问外部系统。

例如:

  • 查询数据库。
  • 读取项目管理工具。
  • 调用日志平台。
  • 访问内部文档。
  • 操作浏览器或设计工具。

MCP 工具应该有清楚的输入输出和权限边界。不要给 Agent 一个过宽的“万能执行器”,否则它会把外部系统风险带进对话。

如何选择#

可以用这张判断表:

需求优先选择
固定写作/审查/排查流程Skill
命令前后自动检查Hook
访问外部 API 或数据库MCP
一次性任务约束当前对话提示词
项目长期规则CLAUDE.md

常见陷阱#

  • 把一次性偏好写成 Skill,后续每次都被影响。
  • 在 Hook 里做太多隐藏修改,用户难以感知。
  • MCP 权限过大,没有只读和写入边界。
  • 用扩展机制弥补需求不清楚的问题。

选型示例#

场景:每次写博客都要遵循固定结构。
选择:Skill。
场景:每次执行删除命令前都要确认。
选择:Hook。
场景:Agent 需要查询 Jira、GitHub、数据库或日志平台。
选择:MCP。
场景:今天这次任务不要改 UI。
选择:当前对话约束。

一句话总结#

Skills 管流程,Hooks 管时机,MCP 管外部能力;先分清问题类型,再决定扩展方式。

文章目录

文章目录