随着引入 Skills(技能),越来越多人对 Claude 的“智能体 (agentic) 生态系统”中各个组件如何协作很感兴趣。无论你是在构建 Claude Code 的复杂工作流、用 API 打造企业解决方案,还是在 Claude.ai 上最大化个人效率,知道什么时候该用什么工具都会极大地改变你与 Claude 的协作方式。
本指南将分解每个构建模块 (building block),解释何时使用,以及如何将它们组合起来,形成强大的代理工作流。
理解智能体的构建模块 (agentic building blocks)
什么是 Skills?
- Skills 是一个 文件夹,里面包含指令 (instructions)、脚本 (scripts) 和资源 (resources)。Claude 在遇到相关任务时,会动态地发现并加载这些内容。
- 可以把它们想象成 专门的训练手册 (training manual),让 Claude 在特定领域(例如:处理 Excel 表格,遵守公司品牌指南等)具备专业知识。
Skills 的工作机制:
- 当 Claude 收到任务时,它首先扫描现有的 Skills,寻找匹配的内容。
Skills 使用 渐进披露 (progressive disclosure) 的方式:
- 先加载 metadata(约 100 tokens),只提供足够的信息来判断这个 Skill 是否相关。
- 如果相关,再加载完整的指令 (instruction)(一般少于 5k tokens)。
- 如果 Skill 包含脚本或附加文件,则这些内容只有在真正需要时才载入。
- 这样设计可以避免 Claude 的 context window(上下文窗口)被技能内容完全“塞满”,提高效率。
何时使用 Skills:
当你想让 Claude 持续、一致 地执行某种“专门任务”时:
- 组织内部工作流程 (workflow):比如品牌指南 (brand guidelines)、合规 (compliance) 流程、文档模板。
- 专门领域知识 (domain expertise):例如复杂的 Excel 公式、PDF 操作、数据分析。
- 个人偏好 (personal preferences):笔记系统、编码风格、研究方法等。
示例:
你可以创建一个 “品牌指南 (brand guidelines)” 的 Skill,其中包含公司颜色方案 (color palette)、字体 (typography) 规则、页面布局规范等。以后每次让 Claude 制作文档或演示时,它就能自动按照这些公司标准来做,而不必你每次都重新说明。
什么是 Prompts(提示)?
- Prompts 是你在对话中,以自然语言 (natural language) 提供给 Claude 的指令。
- 它们是 短暂 (ephemeral) 的、对话式的、反应式 (reactive):你在当下给上下文、方向。
什么时候用 Prompts:
- 一次性请求 (one-off request):例如 “帮我总结这篇文章”
- 对话式润色 (conversational refinement):例如 “把语气变得更专业”
- 即时上下文 (immediate context):例如 “分析这些数据,找出趋势”
- 临时说明 (ad-hoc instructions):例如 “列成要点形式 (bulleted list)”
例子 (prompt):
“请对这段代码做全面安全审查,帮我找出:注入漏洞 (SQL / XSS /命令注入)、认证/授权问题、敏感数据暴露、安全配置错误、访问控制问题、加密失败、输入校验、错误处理和日志 … 每个问题请给出严重性 (Critical/High/Medium/Low)、出问题的位置 (行号或函数)、为什么是风险、具体修复建议 (最好给代码示例)、防御最佳实践……”
提示词 (prompts) 是你与 Claude 互动的主要方式,但它们 不会跨会话 (conversation) 保持。如果你经常重复某类提示 (prompt),你就应该考虑把这些提示封装成 Skill,或者放进项目 (Project) 的指令里。
什么是 Projects(项目)?
- 对于 Claude 的付费计划 (paid Claude 版本) 来说,Projects 是 自包含 (self-contained) 的工作空间 (workspace),有自己的聊天记录 (chat history) 和知识库 (knowledge base)。
- 每个 Project 有一个 200K 上下文窗口 (context window),你可以上传文档、提供背景上下文 (context)、设置对话指令 (custom instructions),这些对话指令将应用于该项目中的所有聊天。
Projects 如何运作:
- 你把相关文档 (比如报告、笔记、产品说明) 上传到项目知识库。
- Claude 在该项目下的所有对话都可以访问这些文档 -> 这样回答会更有信息、更准确。
- 如果项目知识库接近上下文限制 (200K token),Claude 会自动启用 检索增强生成 (Retrieval Augmented Generation, RAG) 模式,将上下文容量扩展 (据说可扩到 10 倍)。
何时使用 Projects:
- 当你需要 持续 (persistent) 的背景知识 来影响每次对话
- 当你想把不同initiative (项目) 分开管理 (分不同 Project)
- 团队协作 (Team / Enterprise 计划):共享知识库和对话历史
- 自定义指令 (custom instructions):为某个项目定义特定的语气 (tone)、视角 (perspective)、方法等
示例:
假设你建立一个 “Q4 产品发布 (Q4 Product Launch)” 的项目,上传市场研究、竞争分析、产品规格说明书等。然后你为这个项目写一句项目指令 (project instruction):
“分析竞争对手,从我们产品策略角度找差异化机会和市场趋势。给出有说服力的证据 + 可操作建议。”
这样无论你在该项目中开启多少个对话,Claude 都会基于这些上下文和指令来回答。
什么时候 不用 Skills 而用 Projects:
- 如果多个对话 / 代理 (agent) 都需要相同的能力 (比如代码安全审查、数据分析)——建议把这能力做成 Skill,而不是把它写在每个子代理或对话里重复。因为 Skills 是可移植 (Portable) 的,而 子代理 (subagents) 通常是为了特定工作流 (workflow) 定制的。
什么是 Subagents(子智能体)?
- Subagents (= 子智能体) 是具有自己上下文窗口 (context window)、定制系统提示 (custom system prompts)、特定工具权限 (tool permissions) 的专门 AI 助手。
- 它们在 Claude Code 里或用 Claude Agent SDK 时可用。子智能体可以独立处理任务,然后把结果返回给主 (main) 智能体。
subagents 如何运作:
- 你为子智能体定义:它是谁 (名字)、它能做什么 (描述)、它能用哪些工具 (Read, Write, Bash, Web 搜索等)。
- Claude 在适当的时候会把任务分配 (delegate) 给子智能体。例如,你可以创建一个 “代码审查 (code-reviewer)” 的子智能体,它有读 (Read)、搜索 (Grep) 工具,但不能写 (Write) 或编辑代码。然后,当需要审查时,主 Claude 自动让子智能体处理,降低主对话被打断或错误改写的风险。
何时使用 subagents:
- 任务专门化 (task specialization):如代码审查、测试生成、安全审计
- 管理上下文 (context):主对话保持干净,复杂工作丢给子代理
- 并行处理 (parallel):多个子智能体同时运行不同任务
- 限制工具权限 (tool restriction):某些子智能体可能只读,不写,保证安全
什么时候用 Skill 而不是 subagent:
- 如果多个对话或多个子智能体共享同一种专业知识 (如安全审查方法、数据分析标准),把它抽成 Skill 更好。这种专业知识是可复用的。
- 子智能体更适合为特定任务建立:它们是“专属员工 (specialized employees)”,而 Skill 是“通用教材 (portable expertise)”。
什么是 MCP (Model Context Protocol)?
- MCP 是一种 通用连接层 (universal connection layer),用于把 Claude 连接到你现有的工具和数据源 (内容库、数据库、CRM、开发环境等)。
- 这是一个 开放标准 (open standard),用于连接 AI 助手 (像 Claude) 与外部系统。
MCP 如何运作:
- 你搭建或使用一个 MCP 服务器 (MCP server),它暴露你的工具/数据 (例如 Google Drive, Slack, GitHub, 数据库等) 给 Claude。
- Claude (作为 MCP 客户端) 连接到这个服务器,从而访问 (读取、搜索) 这些数据,而不是每次都手动上传。
什么时候使用 MCP:
- 当你希望 Claude 访问外部数据 (比如 Google Drive 文档,GitHub 仓库,数据库等)
- 当你希望 Claude 使用你的业务工具 (CRM、项目管理平台等)
- 与开发环境集成 (本地文件、IDE、版本控制)
- 与自定义系统 (你公司内部专有系统) 集成
MCP vs Skill:
- MCP 是连接 (connectivity):让 Claude 能拿到数据或工具
- Skill 是教 Claude “怎样处理数据 / 根据程序做事 (procedural knowledge)”
- 它们可以配合使用:MCP 提供数据访问通道,而 Skill 定义你希望 Claude 用怎样的方法处理这些数据 (比如 “用 Excel 报表格式输出”、“查询数据库时先过滤…”)。
它们如何协同工作
真正强大的地方是当你组合使用这些构建模块 (building blocks):
- 每个模块都有明确分工 (distinct purpose),但协同起来能够打造 “智能体 (agentic) 工作流”。
- 接下来是一个 示例:搭建一个 “研究 (research) 智能体”。
示例流程 (Research Agent):
建立 Project
- 创建一个 “竞争情报 (Competitive Intelligence)” 的 Project
- 上传行业报告、市场分析、竞争对手文档、客户反馈等
- 给这个项目设定指令,例如:“分析竞争对手,找出差异化机会 + 市场趋势 + 推荐行动方案。”
通过 MCP 连接数据源
- 启用 MCP 服务器,比如 Google Drive (研究文档)、GitHub (开源库)、Web 搜索 (实时市场数据)
创建专用 Skills
- 比如一个 “competitive-analysis” Skill:包含你的公司 Google Drive 结构 (文档组织方式)、命名规范、搜索策略 (如何有效检索)、文件优先级 (最新 / 最关键) 等。
- 在 Skill 中还可以定义研究方法 (如何选文档、如何总结、如何引用)。
设定 Subagents (仅限 Claude Code / Agent SDK)
- 创建 “market-researcher” 子智能体:擅长市场趋势、分析行业报告 (工具可能是 Read、Grep、Web-search)
- 创建 “technical-analyst” 子智能体:专注技术架构、开源实现 (工具比如 Bash, Read, Grep)
激活你的研究智能体
当你对 Claude 说:“请分析我们前三个竞争对手的 AI 功能定位,并找出我们可以突破的空白” 时:
- Project 上下文 (背景知识) 加载
- MCP 连接启动 (从 Google Drive / GitHub 拉相关资料)
- 相关Skills 启动 (比如竞争分析 Skill)
- 子智能体 (market-researcher 和 technical-analyst) 各司其职做市场和技术分析
- 你用 prompt 进一步细化 (例如:“重点关注医疗行业客户”)
- 最终结果是:Claude 基于多源数据 + 结构化分析框架 + 特定技能 + 子智能体 + prompt 指令,给出完整、深入、有行动性的竞争分析。
常见问题 (FAQ)
Skills 是怎样工作的?
- Skills 使用 渐进披露 (progressive disclosure):Claude 首先看 metadata (概要) 判断是否相关,如果是,再加载完整内容。如果 Skill 包含脚本 / 附加文件,只在真正需要时载入。
- 这种设计可以让你拥有 很多 Skills,但不会一下子把整个上下文窗口 (context window) 塞爆。Claude 只在它真正需要的时候,加载对应部分。
Skills vs Subagents:什么时候分别用?
- 用 Skills:当你想让任何 Claude 实例 (任意对话) 都能加载某种能力 (expertise)。Skills 就像训练教材,让 Claude 在多个对话中复用这些专业能力。
- 用 Subagents:当你需要完整、独立的小助手 (agent) 来处理特定任务 (有自己的工具权限和上下文)。子代理就像专门员工,有自己的职责和边界。
- 两者结合使用:最强组合。比如,一个子智能体 (code-reviewer) 使用一个 Skill (安全审查标准),这样子智能体既能专注任务,也复用你的专业知识。
Skills vs Prompts:什么时候用哪一个?
- 用 Prompts:你想临时告诉 Claude 做什么,是即时上下文 (conversational) 操作。
- 用 Skills:当你经常重复某种类型任务,或者希望 Claude 自动识别并执行某种类型的任务 (不每次你都要手动写提示)。
- 结合使用:这是最自然的。Skills 提供基础方法论 / 专业能力,你用 Prompts 来提供具体的上下文和细节。
Skills vs Projects:什么时候分别使用?
- 用 Projects:当你有持续、结构化、背景丰富 (knowledge-rich) 的上下文 (比如一个长期项目),你需要 Claude 在这个背景下工作。
- 用 Skills:当你需要 Claude 执行某种可复用、专业化的操作 (procedural tasks) 并且希望这种能力在多个项目 /对话中都可以用。
- 组合使用:例如,你可以有一个 “产品开发” 项目 (存放产品规格 + 市场调研),再配合一些 Skills (比如技术文档写作 Skill、用户反馈分析 Skill) 来系统化你的工作流。