Claude Code 三种扩展机制对比:CLAUDE.md / Skill / Subagent

📅 2026/7/8 2:39:24
Claude Code 三种扩展机制对比:CLAUDE.md / Skill / Subagent
Claude Code 三种扩展机制对比CLAUDE.md / Skill / Subagent三者作用层面完全不同容易混淆本文整理清楚各自定位、区别与选型方式。一、三者是什么1. CLAUDE.md / AGENTS.md —— 静态项目说明文档纯文本文件会话启动时自动、全量加载进上下文相当于每次对话开场白都会提醒 Claude 一遍的项目背景说明。CLAUDE.mdClaude Code 原生支持放项目根目录即自动加载AGENTS.md跨工具开放标准Codex/Cursor 等通用Claude Code不会原生自动加载需要在CLAUDE.md里用AGENTS.md桥接导入才能生效2. SkillSKILL.md—— 按需加载的操作手册会话开始时 Claude 只看到 skill 的简短 description真正用到的时候才把全文内容加载进当前对话加载后会一直留在上下文里。相当于一套具体怎么干某件事的说明书比如怎么填某个 PDF 表单“公司 API 调用规范”。3. Subagent如java-reviewer.md—— 独立执行的专职角色被委派时会新开一个独立的上下文窗口去执行任务过程完全不进入主对话只把最终结论带回来。相当于雇了个专职同事去干活只汇报结果。可以单独限定它能用哪些工具比如只给Read/Grep/Glob不给Write/Edit。二、对比表维度CLAUDE.md / AGENTS.mdSkillSubagent加载时机会话启动时自动加载用到时才加载全文被委派时才启动独立运行是否占用主对话上下文是常驻触发后是留在当前对话否过程隔离只带回结论能否限定工具权限不能纯文本可以allowed-tools可以tools:字段触发方式自动无需触发Claude 按 description 自动匹配或用户显式调用Claude 按 description 自动委派软判断或用户显式点名典型用途几乎每次任务都成立的通用约定命名规范、技术栈、构建命令一套可复用的具体流程/参考资料需要独立跑多步骤、读大量文件、又不想污染主对话的重活存放位置项目根目录CLAUDE.mdAGENTS.md需桥接.claude/skills/name/SKILL.md.claude/agents/name.md项目级~/.claude/agents/name.md个人级三、怎么选——判断口诀CLAUDE.md 说你需要知道什么Skill 说怎么做这件事Subagent 是独立干完一件事再回来汇报。这条规则几乎每次任务都用得上→ 放CLAUDE.md比如commit message 必须带feat:/fix:前缀这是一套具体操作流程只在特定场景才需要任何 agent 都能复用 → 做成Skill这是一个独立任务会读很多文件、跑很多步骤且不希望过程刷屏主对话、需要限定工具权限 → 做成Subagent四、Skill 与 Subagent 可以组合使用二者不是互斥关系一个 Subagent 内部可以调用某个 Skill 作为参考知识比如文档撰写子代理用公司写作规范 skill一个 Skill 也可以通过context: fork配置把任务派发到某个 Subagent如内置的Explore去执行如果你的规范审查逻辑以后想变成写代码时顺手检查一下、不需要独立开任务的轻量模式可以考虑把部分逻辑也做成 skill但只要还是完整独立跑一遍、只读、出报告的模式保持 subagent 就是对的。