Claude Certified Architect – Foundations(CCA-F)是 Anthropic 于 2026 年 3 月 12 日随 Claude Partner Network 发布的第一项 Claude 技术认证, 由 Anthropic Academy(托管在 Skilljar LMS)提供,面向正在用 Claude 构建生产级应用的 solution architects。
它的目标不是测试"会不会用 Claude",而是测试"能不能把 Claude 设计进一个能上线、能维护、 能扛住业务负载的应用系统"。
与一般 prompt 课程不同,CCA-F 强调的是:
官方说明强调:CCA-F 是面向"正在为生产环境设计 Claude 解决方案"的 architect 的 技术考试,重点不是 prompt 技巧,而是系统设计、可靠性、与 Claude Code 工作流的工程化。
以下表格严格区分三类来源,避免把社区结论伪装成官方信息。
| 项目 | 来源 | 可信度 | 说明 |
|---|---|---|---|
| 认证名称 = Claude Certified Architect, Foundations(CCA-F) | 官方 | 高 | 见 anthropic.com/news/claude-partner-network(2026-03-12 发布通稿) |
| Anthropic 第一项 Claude 技术认证 | 官方 | 高 | 官方原文:"the first Claude technical certification, available today" |
| 面向 solution architects 构建生产应用 | 官方 | 高 | 官方原文:"technical exam for solution architects building production applications with Claude" |
| 当前主要面向 Anthropic Partner | 官方 | 高 | 官方报名入口 = anthropic.skilljar.com/claude-certified-architect-foundations-access-request(需要申请) |
| 考试形式 = 多选 + scenario-based | 社区 | 中 | claudecertifications.com 整理;官方未直接披露考试形式细节 |
| 题量 = 4 of 6 scenarios | 社区 | 中 | claudecertifications.com 整理;官方未直接确认场景数与抽题机制 |
| 分数线 = 720 / 1000 | 社区 | 中 | 社区来源;官方未公布分数线 |
| 费用 = Free(对前 5,000 名 Partner 员工) | 社区 | 中 | 社区整理;Partner Network 免费加入是官方事实;考试本身对个人是否收费官方未明确 |
| 五大领域与权重 25/20/20/20/15 | 社区 | 中 | claudecertifications.com / skillcertpro 整理;官方仅披露领域划分,权重为社区推断 |
| 6 个 exam scenario 描述 | 社区 | 中 | 社区整理的题型描述;不能视作原题 |
| 个人报名通道 | 待官方确认 | 中-低 | 目前官方入口为 Partner 申请页面;个人报名开放程度需以 anthropic.skilljar.com 为准 |
| 2026 年内将推出更多认证(sellers / architects / developers) | 官方 | 高 | 官方原文:"Additional certifications for sellers, architects, and developers later in 2026" |
下表领域划分来自 Anthropic 官方说明;权重百分比来自社区整理,仅供参考。
设计并实现 agentic system,覆盖 agentic loop、多 agent 编排、hooks、workflows、session 管理、任务分解。
stop_reason = tool_use / end_turn 的语义allowedTools 必须显式声明"用 Agent SDK 设计一个能自己决定工具调用次数和终止条件的 customer support agent。"
stop_reason 检查→ Lab 2 · 带工具调用的客户支持 agent · Lab 7 · 多 subagent research system
设计有效工具 + 集成 MCP servers:tool description 最佳实践、结构化错误响应、工具分发、MCP 配置、内置工具。
tools/list、tools/call 协议strict: true 工具 → schema 保证"让 Claude 调用的工具返回错误时,怎么写 tool_result 才能让 agent 决定 retry 还是 escalate?"
配置 Claude Code:CLAUDE.md 层级、custom commands/skills、plan mode、iterative refinement、CI/CD 集成、batch 处理。
claude -p 非交互模式 + --output-format json + --json-schema"团队需要在 CI 里自动 review PR,怎么用 claude -p + structured output 替代人工?"
.claude/commands/ 和 .claude/skills/ 重复定义同一名字→ Lab 4 · Claude Code 项目配置包 · Lab 5 · Skills 工作流设计 · Lab 6 · Hook 确定性控制
显式 criteria、few-shot prompting、tool_use 用于结构化输出、JSON schema 设计、validation-retry 循环、多 pass 审查。
output_config.format = json_schemastrict: true 保证 schema 合规"从邮件正文抽取 name/email/plan/demo_requested 四个字段,怎么保证 100% 字段类型正确?"
progressive summarization 风险、context positioning、escalation 模式、error propagation、context degradation、人工 review、信息溯源。
"一个 research agent 跑了 50 轮 context 接近上限,结果开始胡说,怎么设计 degradation 防护?"
下面三条路线,内容深度一致,节奏不同。可根据自己的档期直接挑一条用。
output_config.format)。tool_choice、strict: true、tool_result 错误结构化。stop_reason、termination 条件、max iteration;实现最小 Agent SDK 循环。claude -p、plan mode、approval mode。stop_reason、最小 agent 循环、反模式。@import、.claude/rules/。-p、--output-format json、Message Batches API。tool_use + JSON schema。8 节可读教程,每节包含:一句话理解、适用场景、错误做法、正确做法、小练习。
一句话:agentic loop = Claude 调用工具 → 拿到 tool_result → 决定是否继续,直到 stop_reason = end_turn。
任何让 Claude 自主决策"要不要再调用一次"的场景:研究 agent、code refactor agent、customer support escalation agent。
stop_reason 和 schema 合规度,由代码判断。一句话:prompt 管"如何思考",tool 管"能做什么"。动作性强、可结构化的,必须是 tool。
process_refund tool,输入 schema 强制 amount > 0。一句话:tool = 模型调用;resource = 应用主动注入;prompt = 用户显式选择。
file://...),把"搜索关键字"做成 tool。一句话:CLAUDE.md = 每 session 都读的"宪法";Skills = 按需加载的工作流;Hooks = 确定性拦截;Subagents = 隔离上下文的专家。
| 组件 | 加载时机 | 典型用途 |
|---|---|---|
| CLAUDE.md | 每 session 启动 | 代码风格、build 命令、项目架构 |
| Skills | 用到时才加载 | /review-pr、/deploy-staging 等长流程 |
| Hooks | 事件触发(PreToolUse 等) | 拦截 rm -rf、记录审计日志 |
| Subagents | 显式 Task 派发 | research / code review / exploration |
一句话:用 output_config.format = json_schema 或 strict: true 工具,让 Claude"被"生成合法 JSON,不再靠 JSON.parse() 救火。
邮件抽取、表格生成、API 响应构造、CI 输出物、agent tool result。
"required": ["name","email"];enum 字段保留 "other" + detail。一句话:context 是稀缺资源。少而精 > 多而杂,关键决策要放在 context 中后段(lost-in-the-middle 现象)。
/compact + 显式保留关键 facts一句话:同错误 2 次 → retry 带具体错误回填;2 次后仍失败 → escalate 人工;破坏性操作永远需要确认。
任何有副作用的工具调用:退款、删文件、发邮件、deploy。
{isError:true, errorCategory:"rate_limit", isRetryable:true, hint:"backoff 5s"}。errorCategory 枚举和 retry 策略矩阵。
一句话:把你已经跑通的 Hermes / OpenClaw / Codex 项目,按 5 个领域重新整理为"可被考试复用"的知识资产。
需要把零散经验转化为可解释的架构决策时(考试、面试、团队 onboarding)。
场景: [某客户支持 agent 设计] 决策: [用 subagent 隔离 query rewriting] 原因: [避免污染主对话的 escalation context] 结果: [escalation 准确率 +18%, 详见 Lab 2] 反思: [还可以把 tool 错误 schema 化]
8 个 Lab,覆盖 5 个领域。每个 Lab 都附验收标准与复盘问题。
目标:用 Claude API + JSON schema,从非结构化邮件抽取 4 个字段,0 解析错误。
需要用到的能力:structured outputs、output_config.format、validation-retry。
文件结构建议:
lab1/ ├── extract.py # 主调用脚本 ├── schema.py # Pydantic / dataclass schema ├── samples/ # 10 个测试邮件 └── eval.py # 字段级准确率评测
验收标准:
JSON.parse 异常复盘问题:哪些字段最容易丢?enum + "other" 是否必要?
目标:实现一个能在 5 轮内自行判断"能否解决 / 是否 escalate"的客户支持 agent。
需要用到的能力:Agent SDK、tool schema、escalation 模式、stop_reason。
文件结构建议:
lab2/ ├── agent.py # 主循环 ├── tools/ │ ├── lookup_order.py │ ├── request_refund.py │ └── escalate.py ├── tests/ │ └── scenarios.md # 5 个 customer 场景 └── audit.log # 审计日志
验收标准:
复盘问题:escalation 阈值放在哪里?system prompt 还是代码?
目标:用 Python MCP SDK 写一个暴露本地文档的 MCP server(同时含 tool / resource / prompt)。
需要用到的能力:MCP 三原语、Python SDK 装饰器、Server Inspector 调试。
文件结构建议:
lab3/ ├── server.py # MCP server 主体 ├── knowledge/ # Markdown 文档 └── README.md # 客户端接入说明
验收标准:
复盘问题:tool 与 resource 的边界画在哪里?
目标:为一个真实 repo 准备完整的 Claude Code 工程化配置(CLAUDE.md + 2 个 skills + 1 个 hook)。
需要用到的能力:CLAUDE.md 层级、SKILL.md frontmatter、PreToolUse hook。
文件结构建议:
lab4/ ├── CLAUDE.md ├── .claude/ │ ├── settings.json │ ├── hooks/ │ │ └── block-dangerous-rm.sh │ └── skills/ │ ├── review-pr/SKILL.md │ └── run-tests/SKILL.md └── test/ # 触发 hook 的反例脚本
验收标准:
rm -rf / 被 hook 拦下并给出 reason复盘问题:CLAUDE.md 控制在多少行以内?
目标:把团队里"每次都要重复说"的 3 段流程,封装为 3 个 SKILL.md。
需要用到的能力:SKILL.md frontmatter、dynamic context injection(`` !`git diff` ``)。
验收标准:
复盘问题:哪些逻辑必须放在 skill 里,哪些留在 CLAUDE.md?
目标:用 PreToolUse + PostToolUse hook 实现"自动格式化 + 拦截危险命令 + 审计日志"。
验收标准:
rm -rf、git push --force 被 deny复盘问题:hook 失败时 Claude Code 行为是什么?是否要 graceful fallback?
目标:Coordinator + 3 subagents(search / fetch / summarize),并行研究一个主题并汇总。
验收标准:
复盘问题:context 怎么传递?subagent 之间要不要通信?
目标:故意制造一个 30+ 轮的长对话,观察 Claude 的"中间遗忘"和 hallucination,并加入 mitigation。
验收标准:
复盘问题:什么时候该 /compact?什么时候该 fork session?
可按"类型 / 领域"筛选。优先级:⭐⭐⭐ 必看 · ⭐⭐ 推荐 · ⭐ 选看。
| 资源名称 | 类型 | 领域 | 优先级 | 学习用途 | 链接 |
|---|---|---|---|---|---|
| Anthropic Partner Network 发布通稿 | 官方 | 通用 | ⭐⭐⭐ | 了解 CCA-F 来源、定位、Partner 计划 | anthropic.com |
| Services Track & Partner Hub 通稿 | 官方 | 通用 | ⭐⭐⭐ | 了解 Partner Network 后续服务认证体系 | anthropic.com |
| Anthropic Skilljar 主页 | 官方 | 通用 | ⭐⭐⭐ | CCA-F 报名入口、课程导航 | anthropic.skilljar.com |
| CCA-F Access Request 页 | 官方 | 通用 | ⭐⭐⭐ | CCA-F 官方申请入口(Partner 优先) | anthropic.skilljar.com |
| Building with the Claude API | 官方课程 | D4 / D2 | ⭐⭐⭐ | API、prompt、tool、structured output 入门到精通 | Skilljar |
| Claude Code 101 | 官方课程 | D3 | ⭐⭐⭐ | CLAUDE.md / Skills / Hooks / Subagents 系统课 | Skilljar |
| Introduction to Model Context Protocol | 官方课程 | D2 | ⭐⭐⭐ | MCP 三原语 + Python SDK server/client 实战 | Skilljar |
| Claude Code Overview(官方文档) | 官方文档 | D3 | ⭐⭐⭐ | CLI / IDE / Desktop / Web / CI 集成 | docs.anthropic.com |
| How Claude Remembers Your Project | 官方文档 | D3 / D5 | ⭐⭐⭐ | CLAUDE.md / Memory 完整机制 | docs.anthropic.com |
| Skills(官方文档) | 官方文档 | D3 | ⭐⭐⭐ | SKILL.md 规范、bundled skills、动态上下文注入 | docs.anthropic.com |
| Hooks Reference(官方文档) | 官方文档 | D3 / D1 | ⭐⭐⭐ | 完整 hook 事件、matcher、JSON IO、HTTP hook | docs.anthropic.com |
| Subagents(官方文档) | 官方文档 | D1 | ⭐⭐⭐ | Built-in subagents、自定义 subagent 写法 | docs.anthropic.com |
| Agent SDK Overview | 官方文档 | D1 | ⭐⭐⭐ | Python / TypeScript SDK、Hooks、MCP、Subagents | docs.anthropic.com |
| Tool use with Claude | 官方文档 | D2 | ⭐⭐⭐ | tool schema、strict、tool_choice |
platform.claude.com |
| Structured Outputs | 官方文档 | D4 | ⭐⭐⭐ | JSON outputs + strict tool use | platform.claude.com |
| Prompt Engineering Overview | 官方文档 | D4 | ⭐⭐ | 何时该做 prompt engineering、何时该换模型 | platform.claude.com |
| What is MCP(官方协议站) | 官方文档 | D2 | ⭐⭐⭐ | MCP 概念、生态、build server/client | modelcontextprotocol.io |
| MCP Tools Spec(2025-06-18) | 官方规范 | D2 | ⭐⭐⭐ | tools/list、tools/call、tool schema 字段 | modelcontextprotocol.io |
| Claude Certifications – Exam Guide(社区) | 社区 | 通用 | ⭐⭐ | 社区整理的考试形式、6 scenarios 描述 | claudecertifications.com |
| Claude Certifications – Domains | 社区 | 通用 | ⭐⭐ | 5 领域详细拆解(社区推断权重) | claudecertifications.com |
| Claude Certifications – 12-Week Study Guide | 社区 | 通用 | ⭐⭐ | 社区整理的 12 周计划 | claudecertifications.com |
| paullarionov / claude-certified-architect(GitHub) | 社区 | 通用 | ⭐ | 社区整理的开源 study notes | github.com |
| Tutorials Dojo – CCA-F Study Guide | 社区 | 通用 | ⭐ | 第三方培训机构整理 | tutorialsdojo.com |
Bash(rm ...) 时绝对不能删除 / 下的东西。下列哪种方案最合适?A. 在 system prompt 里写"严禁 rm -rf /"
B. 用 PostToolUse hook 拦截并 undo
C. 用 PreToolUse hook + matcher "Bash" + if 条件判断命令内容,命中则 permissionDecision: "deny"
D. 让 Claude 每次执行前先问用户
rm -rf"示例就是这个模式。PreToolUse 可以在工具执行前 deny,且是确定性的;
PostToolUse 只能事后处理;system prompt 是概率性的;"每次问用户"既不高效也容易疲劳。
A. 全部塞 CLAUDE.md(每个 session 都加载)
B. 做成一个 /review-pr skill,需要时调用
C. 写在 system prompt
D. 写成 Bash 脚本手动跑
A. 在主对话里直接 Read 每个文件
B. 派一个 Explore subagent(read-only),让它只回 summary
C. 用 /compact 多压缩几次
D. 把所有文件复制到 CLAUDE.md
A. tool(model-controlled)
B. resource(app-controlled)
C. prompt(user-controlled)
D. 都不合适,直接用 Read 工具
A. 在 system prompt 让 Claude"返回 JSON"
B. 用 output_config.format = json_schema + strict tool
C. 后处理自然语言回复,正则抽取
D. 让 Claude 输出 XML 再解析
A. 一直 retry,直到成功
B. 在 tool_result 里返回结构化 {isRetryable:true, hint:"backoff 5s"},由 agent 决定 retry 策略;retry 2 次仍失败则 escalate
C. 直接抛异常给上游
D. 让 Claude 自由决定
A. 把关键 fact 放在 context 中后段(recency boost)
B. 把关键 fact 标 source pointer
C. 全部重发一遍早期 message
D. 适当 /compact + summary with sources
A. Claude 一定不会调用该工具
B. Claude 调用但传错参数,或漏调用
C. 工具报错
D. 工具被自动禁用
tools 参数里的 description 是模型决策的依据;模糊 description 是考试中"常见错误答案"。
A. 让 Claude 自己决定
B. 默认永远拒绝
C. PreToolUse hook + matcher 命中时弹人工确认;或要求 tool input 显式 confirm:true,由 hook 校验
D. 改成只读工具
A. 凭感觉改 prompt,再跑一次
B. 写一组代表样本 → 跑 baseline → 改 prompt → 跑同组样本 → 比较
C. 改 10 个不同版本,让 Claude 自己挑最好的
D. 让 Claude 一次输出 100 个变体
A. 继续跑,相信 Claude 会自我修正
B. 让每个结论必须带可追溯 source pointer;source 缺失则拒绝结论
C. 加大 temperature
D. 切换到 Haiku
A. 跑一个长对话 session 复用
B. 用 claude -p + --output-format json + 独立 session,generator 与 reviewer 分开
C. 用 Anthropic SDK 直接循环调用
D. 让 Claude 自己启动 Web UI
-p + --output-format json;session 隔离避免 generator/reviewer 互相污染。
A. 全部给所有工具,自己把控
B. 在每个 subagent 的 tools 白名单里只列 Read / Glob / Grep
C. 用一个全局 deny list
D. 让 Claude 自动决定
A. 把 CLAUDE.md 缩成 bullet list
B. 把多步骤流程拆成 SKILL.md;topic-specific 规则放进 .claude/rules/ 路径作用域
C. 增加 system prompt 强调
D. 重启 Claude Code
A. 继续 retry 到成功
B. 切换到 fallback 工具
C. escalate 到人工,并把失败上下文(含 tool_result、retry 次数)一并交付
D. 静默失败
tool_choice: {"type": "any"} 的含义是?A. Claude 不能调用任何工具
B. Claude 必须调用至少一个工具
C. Claude 可以选任意工具
D. Claude 必须按特定工具调用
any 强制至少一次工具调用;auto 让模型自由决定;tool 强制特定工具。
A. 在 CLAUDE.md 里写"记得跑测试"
B. 用 PostToolUse hook 监听 Edit/Write → 触发 npm test
C. 让 Claude 自由决定
D. 在 push 之前手动跑
A. 看一次结果,凭感觉打分
B. 跑 N 个样本,计算字段级 precision/recall/F1,与 baseline 对比
C. 让 Claude 自评
D. 用人工 review
system prompt 是概率性的,关键规则应当用 hook 或 subagent 工具白名单来实现。
CLAUDE.md 应当每 session 都加载,多步骤流程应该拆为 SKILL.md(按需加载)。
"千万不要 rm -rf" 在 prompt 里是软约束;PreToolUse hook 是硬约束。
自由字符串错误无法被结构化处理;用 {isError, errorCategory, isRetryable}。
过度切分导致 context 反复序列化、loss 与 cost 暴涨;通常 2-4 个 subagent 已足够。
subagent 起步没有 source pointer 和明确目标,summary 会失真。
没有 eval 的 prompt 改进 = 盲改;至少要 N 个样本 + 字段级指标。
MCP 三原语边界不清晰,会让 Claude 错把 resource 当 tool 调用,或反之。
删除 / 退款 / deploy 永远要 hook 拦截 + 人工确认。
CCA-F 是架构认证,单纯记忆题库过不了;必须靠真实跑通 + 复盘。
结合已有 OpenClaw / Hermes / Codex / Skills / Wiki / GitHub Pages 项目经验,把它们整理为 CCA-F casebook。
8 个中文提示词模板,覆盖学习 / Lab 复盘 / 架构 review / MCP 设计等场景。
你是 CCA-F 备考教练。我要学习 Domain {N}:{领域名}。
请按以下顺序给我讲:
1) 核心概念与官方定义(必须标明 Anthropic 官方 / 社区推断)
2) 必懂子主题
3) 1 个反模式 + 为什么错
4) 1 个实战 mini-Lab(30 分钟内可完成)
5) 给 3 道原创判断题 + 答案 + 原因
要求:所有引用必须标明来源类型。语言:中文。
我刚完成了 Lab {N}:{Lab 标题}。请帮我做 Lab 审查:
1) 我做完的部分达到了什么效果
2) 哪个反模式我可能踩了
3) 哪个官方最佳实践我没用上
4) 如果只能重写一段,应该改哪里
5) 帮我生成 3 道"如果面试官追问这个 Lab,他会问什么"的问题并回答
要求:基于 Anthropic 官方文档与 MCP spec 来评分。
请按 CCA-F 风格出 1 道原创判断题: 1) 必须是 scenario-based,不考死记硬背 2) 必须基于公开的 Anthropic 文档 / MCP spec 3) 给出 A/B/C/D 4 个选项,其中 1 个正确、3 个是真实会有人选的典型错误答案 4) 答案部分必须解释每个错误选项错在哪里 5) 标注本题对应哪个 Domain 要求:不得声称是真题。
我做了这个架构决策:{决策描述}。
请帮我做架构复盘:
1) 我为什么选这个(决策依据)
2) 备选方案有哪些
3) 这个决策在 production 可能出什么问题(context degradation / retry storm / escalation overflow 等)
4) Anthropic 官方文档是否支持 / 反对这个决策(引用 URL)
5) 给一个改进建议
请帮我为这个仓库生成一份 Claude Code 工程化配置: - CLAUDE.md(≤ 200 行) - 2 个 SKILL.md - 1 个 PreToolUse hook(拦截危险命令) - 1 个 Subagent(read-only review) 输出格式:每个文件给出完整 frontmatter + body。 要求:SKILL.md 必须用 dynamic context injection(!`git diff` 等)。
请帮我设计一个 MCP server:
1) 暴露 1 个 tool + 1 个 resource + 1 个 prompt
2) 用 Python SDK 装饰器写法
3) tool description 必须包含 input/output schema + 1 个 example
4) resource 用 templated URI
5) prompt 是用户显式触发的
6) 工具错误必须返回结构化 {isError, errorCategory, isRetryable}
7) 包含人类确认路径(PreToolUse hook)
要求:符合 MCP 2025-06-18 spec。
我跑了一个 agent session({轮数} 轮),附件是 transcript。
请做 context reliability 检查:
1) 哪几轮开始出现 fact recall 衰减
2) 哪些结论没有 source pointer
3) 哪些 retry 模式不合理
4) 哪些破坏性操作缺人工确认
5) 给一个具体的 mitigation 清单(5 条以内)
要求:基于 Anthropic 官方 reliability 建议。
请帮我设计一个 CCA-F 备考评测系统: 1) 每领域至少 N 道原创题(标注 Domain) 2) 每题给出 official / community 来源标注 3) 题型比例:scenario-based 80% / 概念 20% 4) 包含 retry vs escalate / hook vs prompt / subagent vs main 等高频考点 5) 输出为 JSON schema,方便我做评测 要求:不得声称是真题。
进度:0%