有人拆解了整份考试指南,提取出了真正值得学习的内容。这篇文章把这些知识整理成一份完整的学习路线图,覆盖五大领域,每个领域都附带实践项目建议。
考试考什么,你就该学什么
CCA 考试是 60 道单选题、120 分钟、全程监考、不可查阅外部资料。它围绕六个核心场景展开:
- 客户支持代理(Agent SDK + MCP + 升级处理)
- 用 Claude Code 生成代码(CLAUDE.md + 计划模式 + 斜杠命令)
- 多代理研究系统(协调器-子代理编排)
- 开发者生产力工具(内置工具 + MCP 服务器)
- 用于 CI/CD 的 Claude Code(非交互式管道 + 结构化输出)
- 结构化数据提取(JSON 模式 + tool_use + 验证循环)
这些场景对应五个知识领域,权重各不相同。下面逐一拆解。
领域一:代理架构与编排(占比 27%)
这是权重最大的领域,也是最容易踩坑的地方。
考试会测试三种需要立刻识别出来的反模式:用解析自然语言的方式来判断循环是否终止、把固定迭代上限当作主要停止机制、以及检查助手回复文本来判断任务是否完成。这三种做法全部是错的。
这里有一个很多人会犯的认知错误:子代理和协调器不共享内存。 子代理在隔离的上下文中运行,每一条信息都必须通过提示明确传递。如果你默认它们能"看到"协调器的状态,系统一定会出问题。
还有一条关键规则——当涉及财务或安全关键操作时,光靠提示指令是远远不够的。你必须通过钩子(hooks)和先决条件门(precondition gates)以编程方式强制执行工具调用顺序。想想看,如果一个金融代理的操作顺序只靠 prompt 里的一句"请先验证身份再转账"来保障,这可靠吗?
实践项目: 构建一个包含 3-4 个 MCP 工具的多工具代理,正确处理 stop_reason 事件,添加一个 PostToolUse 钩子来规范数据格式,以及一个工具调用拦截钩子来阻止违反策略的行为。
领域二:工具设计与 MCP 集成(占比 18%)
这个领域有一个被严重低估的知识点:工具描述(tool description)是 Claude 选择工具的主要依据。
如果你的两个工具描述模糊且重叠,Claude 的工具选择就会变得不可靠。举个例子,get_customer 和 lookup_order 如果描述几乎相同,就会导致持续的错误路由。正确的修复方式不是加少量示例、不是加路由分类器、也不是合并工具——而是写出更清晰、更有区分度的工具描述。
你需要熟练掌握 tool_choice 的三种模式:
- "auto":模型可能返回文本而不调用工具
- "any":必须调用工具,但由模型自行选择哪个
- 强制指定:必须调用你指定的那个工具
另一个关键点:给一个代理塞 18 个工具会显著降低选择可靠性。最佳实践是将每个子代理的工具限制在 4-5 个,且都与其角色紧密相关。
实践项目: 构建两个功能故意相似的 MCP 工具,先写出模糊的描述让路由出错,然后修正描述,亲身体验工具描述质量对系统行为的影响。
领域三:Claude Code 配置与工作流(占比 20%)
这个领域区分的是"用过 Claude Code 的人"和"为团队配置过 Claude Code 的人"。
CLAUDE.md 的层级结构是核心考点。 三个层级:
- 用户级:
~/.claude/CLAUDE.md——个人配置,不会被版本控制 - 项目级:
.claude/CLAUDE.md——项目根目录,会随代码库共享 - 目录级:子目录中的 CLAUDE.md 文件
最经典的考试陷阱:团队成员没有收到某条指令,因为它放在了用户级配置里(不会被版本控制,也不会共享给其他人)。
一个容易被忽视的功能是路径特定规则。在 .claude/rules/ 目录中使用带 YAML 前置元数据的 glob 模式(如 **/*.test.tsx),可以在整个代码库范围内应用代码约定。这是目录级 CLAUDE.md 做不到的,因为后者被绑定在特定目录下。
关于计划模式与直接执行的选择也很重要:
- 计划模式适用于:单体架构重构、多文件迁移、架构决策
- 直接执行适用于:单文件 Bug 修复、一次验证检查、明确范围的小任务
还有几个实用知识点:context: fork 在技能前置元数据中用于隔离冗长输出;-p 标志用于非交互式 CI/CD 场景;独立审查实例比在同一会话中自我审查能发现更多问题。
实践项目: 搭建一个包含完整 CLAUDE.md 层级结构的项目,配置带 glob 模式的 .claude/rules/ 目录,创建一个使用 context: fork 的技能,并在 .mcp.json 中配置带环境变量扩展的 MCP 服务器。分别用计划模式做一次多文件重构、用直接执行模式修一个单文件 Bug。
领域四:提示工程与结构化输出(占比 20%)
这个领域可以用两个词概括:明确具体。
"保守一点"不会提高精确度。"只报告高置信度发现"不会减少误报。真正有效的做法是:精确定义哪些问题需要报告、哪些需要跳过,并为每个严重程度级别提供具体的代码示例。模糊的指令只会得到模糊的结果——这个道理说起来简单,但在实际构建系统时极容易忘记。
少量示例(few-shot)是杠杆最高的技术。 2-4 个针对模糊情况的目标示例,展示为什么选择某个动作而不是其他替代方案的推理过程,效果远好于长篇大论的规则说明。
关于结构化输出,tool_use 配合 JSON 模式可以消除语法错误,但无法消除语义错误。模式设计的几个要点:
- 当源数据可能缺失时使用可空字段(防止模型捏造值)
- 在枚举中加入
"unclear"选项 - 提供
"other"+ 详细描述字符串的组合
还有一个值得了解的是消息批处理 API:费用节省 50%,最长 24 小时处理,没有延迟 SLA,不支持多轮工具调用。适合隔夜批量报告,不适合阻塞性的合并前检查。
实践项目: 构建一个使用 tool_use 的数据提取管道,包含必填字段、可选字段和可空字段,添加验证重试循环,通过批处理 API 运行一批任务,并根据 custom_id 处理失败的请求。
领域五:上下文管理与可靠性(占比 15%)
权重虽然最小,但这里的错误会产生连锁效应。
渐进式摘要会丢失关键交易数据。 解决方法是维护一个持久性的"案例事实"块,包含提取的金额、日期、订单号等信息,这个块永远不会被摘要压缩,每次提示都要包含它。
"迷失在中间"效应: 模型在处理长输入时,埋藏在中间位置的信息容易被忽略。应对方法很简单——把关键摘要放在输入的开头。
关于升级触发条件,有三个可靠的:客户明确要求人工介入(立即执行)、遇到政策空白、以及代理无法推进。而两个不可靠的触发条件是:情绪分析和自我报告的置信度分数。考试会故意用后两者来诱导你。
错误传播的正确方式是传递结构化上下文:故障类型、尝试过的查询、部分结果、可用替代方案。两种反模式需要避免:静默吞掉错误,或者因单个子代理失败就终止整个工作流。
实践项目: 构建一个带有两个子代理的协调器,模拟超时情况,验证协调器能获取结构化错误上下文并继续处理部分结果。用相互冲突的信息来源进行测试。
推荐的学习路径
Anthropic 官方推荐了四个方向的学习资源:
- 使用 Claude API 进行构建——掌握 API 调用的基础
- 模型上下文协议(MCP)入门——理解工具集成的标准协议
- Claude Code 实战——上手配置和工作流
- Claude 101——基础概念建立
每个领域的学习方法都是一样的:先读文档理解概念,然后动手构建上面列出的实践项目。不要只看不练——这五个领域的知识是高度实操导向的,光靠阅读很难真正掌握。
这套知识体系覆盖了从代理编排到提示工程、从工具设计到上下文管理的完整链路。作为独立开发者,你可能不需要每个领域都精通,但至少应该了解全貌,然后根据自己正在构建的产品深入其中两三个方向。一个值得思考的问题是:在这五个领域中,哪一个是你当前项目的瓶颈?从那里开始。