语音摘要 — 点击播放以跟读:正在朗读的行会保持在顶部附近。
你将学到什么
预计时间:15分钟
学完本课程后,你将能够:
- 比较技能与CLAUDE. md、子代理、钩子和MCP服务器的区别
- 根据具体使用场景选择合适的Claude Code定制功能
- 设计结合多种功能的互补性方案
技能与其他Claude Code功能
(3分钟)
Claude Code提供多种定制选项,选择不当会导致不必要的复杂性。本视频解析何时使用技能、CLAUDE. md、子代理、钩子和MCP服务器。你将了解各选项的关键区别以及它们在典型开发设置中如何互补。
关键要点
- **CLAUDE. md会加载到每个对话中,最适合持续生效的项目标准。技能**按需加载,最适合特定任务的专长
- 子代理在隔离的执行上下文中运行——用于委托任务。技能为当前对话添加知识
- 钩子是事件驱动的(在文件保存、工具调用时触发)。技能是请求驱动的(根据询问内容激活)
- MCP服务器提供外部工具和集成——与技能属于完全不同的类别
- 每个功能各有所长——组合使用而非强行采用单一方案
Claude Code提供多种定制选项:技能、CLAUDE. md、子代理、钩子和MCP服务器。它们解决不同问题,了解何时使用何种功能可避免错误构建。下面我们逐一解析。
CLAUDE.md与技能
CLAUDE. md会加载到每个对话中。如果你希望Claude在项目中使用TypeScript严格模式,就把它放在CLAUDE. md文件中。
技能按需加载。当Claude匹配到技能请求时,该技能的指令会加入对话。你的PR审查清单在编写新代码时不需要出现在上下文中——只有当你请求审查时才会激活。
**CLAUDE. md适用于:**
- 始终适用的项目全局标准
- 如"永远不要修改数据库模式"等约束条件
- 框架偏好和代码风格
技能适用于:
- 特定任务的专长知识
- 仅有时需要的信息
- 会干扰常规对话的详细流程
技能与子代理
技能为当前对话添加知识。当技能激活时,其指令会加入现有上下文。
子代理在独立上下文中运行。它们接收任务后独立工作并返回结果。与主对话完全隔离。
使用子代理当:
- 需要将任务委托给独立执行环境
- 需要不同于主对话的工具访问权限
- 需要隔离委托工作与主对话上下文
使用技能当:
- 需要增强Claude对当前任务的知识储备
- 专长知识适用于整个对话过程
技能与钩子
钩子由事件触发。例如每次Claude保存文件时运行检查器,或在特定工具调用前验证输入。它们是事件驱动的。
技能是请求驱动的,根据询问内容激活。
钩子适用于:
- 每次文件保存时都应执行的操作
- 特定工具调用前的验证
- Claude行为的自动化副作用
技能适用于:
- 影响Claude处理请求方式的知识
- 影响Claude推理过程的指导原则
综合运用
典型设置可能包含:
- **CLAUDE. md**——持续生效的项目标准
- 技能——按需加载的任务专长
- 钩子——由事件触发的自动化操作
- 子代理——用于委托任务的隔离执行环境
- MCP服务器——外部工具与集成
各功能各司其职。不要将所有需求都强行塞入技能——可以多管齐下。技能提供自动化的任务专长,CLAUDE. md用于持续生效的指令,子代理在隔离环境中运行,钩子响应事件,MCP则提供外部工具。
当需要Claude在相关话题出现时自动应用特定知识时使用技能,并与其他功能组合实现全面定制。
课程反思
- 检查你当前的CLAUDE. md文件。其中是否有更适合作为技能(仅在相关时加载)的内容?
- 思考团队的开发工作流。哪种Claude Code功能组合(技能、钩子、子代理、MCP)能解决最常见的痛点?
后续内容
下节课你将学习如何与团队和组织共享技能——从提交到代码库、通过插件分发,到通过管理设置进行企业级部署。
反馈
在学习过程中,我们很想知道你如何将技能应用于工作,以及任何反馈建议。请在此处分享反馈。