CCAR-F Exam Academy
CCAR-F Exam Academy
Claude Certified Architect – Foundations · Exam code CCAR-F · Guide v1.0, July 2026

Pass the CCAR-F together.

An interactive study academy for Anthropic's Claude Certified Architect – Foundations exam. Everything here is built from the official exam guide: a structured learning pathway, five domain deep-dives with mnemonics and decision trees, a 52-card flashcard deck, and four practice tests with domain-level score reports.

60Questions
120 minTime limit
720/1000Passing score
$125Exam fee
4 of 6Scenarios per sitting
12 moCredential validity
ProctoredOnline or test center
MC + MRMultiple choice & response

What the exam weighs

Five content domains. The weight is the share of the 60 scored items — hover a bar for the approximate item count. Spend your study time in the same proportions.

Memory hook: "Architects Tune Claude, Prompting Carefully" — Agentic 27 · Tools 18 · Claude Code 20 · Prompting 20 · Context 15. Weights chant: 27-18-20-20-15.

The six scenarios

Every question is framed by one of six production scenarios; your sitting draws 4 of the 6 at random, so prepare all six. Learn each scenario's shape and which domains it pulls from.

1 · Customer Support Resolution Agent

Agent SDK agent handling returns, billing disputes, account issues via MCP tools (get_customer, lookup_order, process_refund, escalate_to_human). Target: 80%+ first-contact resolution.

D1 D2 D5

2 · Code Generation with Claude Code

Team workflow integration: slash commands, CLAUDE.md configuration, plan mode vs direct execution.

D3 D5

3 · Multi-Agent Research System

Coordinator delegates to search, analysis, synthesis, and report subagents to produce cited research reports.

D1 D2 D5

4 · Developer Productivity

Agent SDK tools for codebase exploration, legacy systems, boilerplate, automation — built-ins (Read, Write, Bash, Grep, Glob) plus MCP servers.

D2 D3 D1

5 · Claude Code for CI

Automated code review, test generation, PR feedback in CI/CD — actionable prompts, minimal false positives.

D3 D4

6 · Structured Data Extraction

Extract from unstructured documents, validate with JSON schemas, handle edge cases, feed downstream systems.

D4 D5

How you're scored

Criterion-referenced: you pass by meeting a fixed standard (scaled 720 on a 100–1,000 scale), not by beating other candidates. The score report shows percent-correct per domain — diagnostic only; pass/fail rides on the total scaled score.

Explicitly out of scope

Don't burn study time on: fine-tuning, API auth/billing, MCP server hosting/deployment, model internals, Constitutional AI/RLHF, embeddings, computer use, vision, streaming, rate limits & pricing math, OAuth details, cloud-provider specifics, prompt-caching internals, tokenization.

How to use this academy Work the Learning Path tab in order (about 3 weeks at ~45 min/day). Use Domains as your reference and Flashcards daily. Take the Official Sample test early as a baseline, then Full-Length Exam 1 → Full-Length Exam 2 → the Final Mock Exam as you finish each phase. You're ready when you clear 80% on two consecutive tests with no domain under 70%. Already sat the exam? Feed your Pearson VUE score report into the Score Report tab for a prioritized restudy plan.
Learning pathway

Three weeks to exam-ready

Sequenced heaviest-domain-first, with hands-on labs from the official guide (Section 8) — the exam tests practical judgment, so the labs matter as much as the reading. Progress is saved in your browser.

Overall progress
0 of 0 complete

Week 1 Foundations: Agents & Tools Domains 1 + 2 · 45% of the exam

Week 2 Claude Code & Prompt Engineering Domains 3 + 4 · 40% of the exam

Week 3 Reliability + Full Rehearsal Domain 5 · 15% — plus everything, timed

Readiness bar Two consecutive full-length exams ≥80% with no domain under 70%, all three labs done, flashcard deck cleared twice. If a domain stays weak, its questions are ~9–16 of your 60 real items — do the math on whether it can sink you.
Reference

Domain deep-dives

Each domain distilled from the guide's task statements into the decisions the exam actually tests, plus the traps its distractors are built from.

27% Domain 1 · Agentic Architecture & Orchestration ▸

The agentic loop (§1.1)

Send request → inspect stop_reason → if tool_use: execute the tools, append results to conversation history, loop; if end_turn: done. The model decides the next tool from context — that model-driven choice is what makes it "agentic" vs a pre-wired decision tree.

Exam traps Terminating by parsing natural-language signals ("looks finished"), using arbitrary iteration caps as the primary stop, or treating the presence of assistant text as completion. stop_reason is the only correct loop control.

Coordinator–subagent orchestration (§1.2–1.3)

  • Hub-and-spoke: all inter-subagent communication routes through the coordinator — observability, consistent error handling, controlled information flow.
  • Context isolation: subagents inherit nothing. Pass prior findings, source metadata, and quality criteria explicitly in the subagent prompt; use structured formats to separate content from metadata (URLs, doc names, page numbers) so attribution survives.
  • Spawning: the Task tool spawns subagents; the coordinator's allowedTools must include "Task". Parallelism = multiple Task calls in a single response, not across turns.
  • Coordinator prompts state goals and quality criteria, not step-by-step procedure — subagents need room to adapt. Watch for too-narrow decomposition (the "creative industries → only visual arts" failure).
  • Dynamic routing: a good coordinator selects which subagents a query needs rather than always running the full pipeline.

Enforcement: hooks vs prompts (§1.4–1.5)

If it MUST happen, it's a hook. If it SHOULD happen, it's a prompt. Prompt instructions have a non-zero failure rate — never bet money movement on them.
  • Prerequisite gates: programmatically block process_refund until get_customer returned a verified ID.
  • Tool-call interception: block policy violations (refund > $500) and redirect to escalation.
  • PostToolUse hooks: normalize heterogeneous tool output (Unix timestamps, ISO 8601, numeric status codes) before the model sees it.
  • Handoffs: escalating to a human who can't see the transcript? Compile a structured summary — customer ID, root cause, amounts, recommended action.

Decomposition & sessions (§1.6–1.7)

Is the multi-step work predictable in advance?
Yes → prompt chainingFixed sequential passes, e.g. per-file analysis then a cross-file integration pass.
No → dynamic decompositionMap structure first, generate subtasks from findings, adapt the plan as dependencies appear.
Continuing prior work — is the old context still valid?
Mostly valid → resume--resume <name>; tell the agent exactly which files changed for targeted re-analysis. fork_session to explore divergent approaches from a shared baseline.
Stale → start freshNew session seeded with a structured summary beats resuming stale tool results.
18% Domain 2 · Tool Design & MCP Integration ▸

Tool descriptions are the routing layer (§2.1)

Descriptions are the primary mechanism for tool selection. Minimal or overlapping descriptions cause misrouting. The fix hierarchy: enrich descriptions first (inputs, example queries, edge cases, boundaries vs similar tools) — before few-shot examples, routing layers, or consolidation. Also audit system prompts for keyword-sensitive wording that hijacks selection, and split generic tools into purpose-specific ones with clear I/O contracts.

Structured errors (§2.2)

CategoryExamplesRetryable?Agent should…
Transienttimeout, service unavailableYesretry locally inside the subagent
Validationmalformed inputAfter fixing inputcorrect and re-call
Businesspolicy violationNoexplain to user / escalate (retriable: false + friendly text)
PermissionunauthorizedNostop, don't waste retries
Error taxonomy: T-V-B-P — "Tools Very Badly Provisioned". And: an access failure ("couldn't search") is never the same as a valid empty result ("searched, found nothing").
Exam traps Generic "Operation failed" responses (coordinator can't decide recovery); silently returning empty results on error (hides failure as success); terminating a whole workflow on one subagent failure. Correct: structured context — failure type, what was attempted, partial results, alternatives.

Tool distribution & tool_choice (§2.3)

  • Too many tools (18 vs 4–5) degrades selection; scope each agent to its role. Out-of-role tools get misused (a synthesis agent running web searches).
  • High-frequency cross-role need? Give a scoped tool (e.g. verify_fact for the synthesis agent); complex cases still route via coordinator.
  • Constrain risky generic tools: replace fetch_url with load_document that validates URLs.
tool_choiceBehaviorUse when
automay call a tool or answer in textconversation allowed
anymust call some toolguarantee structured output when doc type unknown
{"type":"tool","name":"…"}must call that specific toolforce a specific extraction to run first
auto = may talk · any = must call · forced = must call this.

MCP configuration (§2.4)

  • Project scope .mcp.json → shared team tooling, version-controlled. User scope ~/.claude.json → personal/experimental. Both load simultaneously; tools discovered at connection time.
  • Secrets: env-var expansion ${GITHUB_TOKEN} in .mcp.json — never commit credentials.
  • MCP resources expose content catalogs (schemas, issue summaries, doc hierarchies) so agents don't burn exploratory tool calls.
  • Prefer community servers for standard integrations (Jira); build custom only for team-specific workflows. Write rich MCP tool descriptions or the agent will prefer built-ins like Grep.

Built-in tool selection (§2.5)

Grep = what's inside files · Glob = what files are named · Read→Write = fallback when Edit can't find unique anchor text. Explore incrementally: Grep entry points → Read to trace — never read everything upfront.
20% Domain 3 · Claude Code Configuration & Workflows ▸

Where does configuration live? (§3.1–3.3)

You want…Put it inWhy
Universal team standards, always loadedproject CLAUDE.mdversion-controlled, everyone gets it on clone
Personal preferences~/.claude/CLAUDE.mduser-level, never shared — classic bug: "teammate isn't getting the instructions"
Modular standards per package@import in CLAUDE.mdselective inclusion, keeps files focused
Conventions by file type across directories.claude/rules/ + YAML paths: globsloads only when editing matching files (e.g. **/*.test.tsx) — beats directory CLAUDE.md for scattered files
Team slash command.claude/commands/shared via version control (~/.claude/commands/ = personal)
On-demand task workflow.claude/skills/ SKILL.mdinvoked when needed vs CLAUDE.md's always-on cost
Scope rule: project = shared with the team, ~ (home) = to me only. Diagnosing "config not applying to teammates"? It's in the wrong scope.

Skill frontmatter (§3.2)

  • context: fork — run in an isolated sub-agent context so verbose output doesn't pollute the main conversation.
  • allowed-tools — restrict tool access during the skill (e.g. no file writes).
  • argument-hint — prompt developers for required parameters.
  • Personal variant of a team skill? Create it under ~/.claude/skills/ with a different name.

Plan mode vs direct execution (§3.4)

Large-scale change, multiple valid approaches, or architectural decisions?
Yes → plan modeMicroservice restructuring, 45-file library migrations, choosing between integration approaches. Explore safely before committing; prevents costly rework. Pair with the Explore subagent to keep verbose discovery out of main context.
No → direct executionWell-scoped, well-understood changes: single-file fix with a clear stack trace, adding one validation check.

Iterative refinement (§3.5)

  • Concrete input/output examples beat prose when descriptions get interpreted inconsistently — give 2–3.
  • Test-driven iteration: write the test suite first, share failures to steer improvement.
  • Interview pattern: have Claude ask questions first to surface considerations (cache invalidation, failure modes) in unfamiliar domains.
  • Interacting problems → one detailed message; independent problems → fix sequentially.

CI integration (§3.6)

  • claude -p "…" (--print) = non-interactive mode; without it the CI job hangs waiting for input.
  • --output-format json + --json-schema = machine-parseable findings for inline PR comments.
  • CLAUDE.md supplies CI context: testing standards, fixtures, review criteria.
  • An independent Claude instance reviews better than the session that wrote the code (it carries generation bias). Re-running after new commits? Include prior findings; ask only for new/unaddressed issues. Provide existing test files so generation doesn't duplicate coverage.
Exam traps --batch flag and CLAUDE_HEADLESS env var do not exist. < /dev/null stdin tricks are wrong answers. The answer is -p.
20% Domain 4 · Prompt Engineering & Structured Output ▸

Precision prompting (§4.1–4.2)

  • Explicit categorical criteria ("flag a comment only when it contradicts actual code behavior") beat vague dials ("be conservative", "high-confidence only") — those don't move precision.
  • False positives destroy trust in accurate categories too. Triage: temporarily disable the noisy category while you fix its prompt; define severity levels with concrete code examples.
  • Few-shot examples are the top technique for consistent format and for teaching judgment on ambiguous cases: 2–4 targeted examples showing why one action beat the plausible alternative; include desired output format (location, issue, severity, fix); show acceptable vs genuine-issue pairs; demonstrate varied document structures. Reduces extraction hallucination.

Structured output via tool_use (§4.3)

  • tool_use + JSON schema = guaranteed schema-compliant output, no JSON syntax errors. But it doesn't prevent semantic errors — line items can still not sum to total, values can land in the wrong fields.
  • Nullable/optional fields for info the document may lack — required fields force the model to fabricate. Enums get "unclear" and "other" + detail string for extensibility.
  • Self-validation flows: extract calculated_total alongside stated_total; add conflict_detected booleans.

Validation & retry (§4.4)

Extraction failed validation — will a retry help?
Format/structural error → yesRetry with the document + failed extraction + the specific validation errors appended.
Information absent from source → noNo retry can conjure data that isn't there. Mark the field null / route to review.

Add detected_pattern fields to findings so dismissed false positives can be analyzed systematically.

Batch processing (§4.5)

Batches API = 50-24-0: 50% cost savings · up to 24-hour window · 0 latency SLA (and 0 multi-turn tool calling per request). Correlate request/response with custom_id.
  • Fit: non-blocking, latency-tolerant work (overnight reports, weekly audits, nightly test generation). Never for blocking pre-merge checks — those stay synchronous.
  • SLA math: 30-hour delivery promise with 24-hour processing → submit every 4–6 hours.
  • Failures: resubmit only failed docs (by custom_id), modified (e.g. chunk oversized docs). Refine prompts on a sample before batching the full volume.

Multi-instance & multi-pass review (§4.6)

  • A model reviewing its own output keeps its generation reasoning — an independent instance without that context catches more.
  • Large reviews: per-file passes for local issues + a separate cross-file integration pass; avoids attention dilution and contradictory findings.
  • Have the model self-report confidence per finding to route review — but calibrate against labeled data (see D5).
Exam traps "Bigger context window" doesn't fix attention dilution. "Consensus across 3 runs" suppresses real intermittent findings. Batch-with-timeout-fallback adds complexity where matching API-to-workflow is the answer.
15% Domain 5 · Context Management & Reliability ▸

Keeping the important stuff in context (§5.1, §5.4)

  • Progressive summarization risk: numbers, percentages, dates, customer-stated expectations blur into vague summaries. Fix: extract transactional facts into a persistent "case facts" block included in every prompt, outside summarized history.
  • Lost in the middle: models process the beginning and end of long inputs reliably; middles get dropped. Put key-findings summaries first; use explicit section headers.
  • Trim verbose tool outputs to relevant fields (40-field order lookups when 5 matter) before they accumulate.
  • Long exploration: scratchpad files persist findings across context boundaries; subagents isolate verbose discovery; summarize each phase before the next; /compact when context fills; crash recovery via structured state manifests the coordinator reloads on resume.

Escalation (§5.2)

Escalate on H-P-P: Human explicitly requested (immediately — don't investigate first) · Policy gap or ambiguity (e.g. competitor price-match when policy only covers own-site) · Progress impossible.
  • Frustrated but resolvable? Acknowledge, offer the fix, escalate only if they insist again.
  • Multiple customer matches → ask for more identifiers, never pick heuristically.
  • Add explicit escalation criteria with few-shot examples to the system prompt.
Exam traps Sentiment-based auto-escalation (mood ≠ complexity) and self-reported confidence thresholds (poorly calibrated) are always wrong answers. So is "investigate first" when the customer explicitly asked for a human.

Error propagation in multi-agent systems (§5.3)

Subagents recover locally from transient failures; what they can't resolve they propagate with structured context: failure type, attempted query, partial results, viable alternatives. Coordinator can then retry-modified, reroute, or proceed-with-gaps. Synthesis output carries coverage annotations: which findings are well-supported vs gapped by unavailable sources.

Human review & confidence calibration (§5.5)

  • 97% aggregate accuracy can hide a failing document type or field — segment accuracy by type and field before automating anything.
  • Stratified random sampling of high-confidence extractions measures ongoing error rates and catches novel patterns.
  • Field-level confidence scores are only useful after calibration against labeled validation sets; route low-confidence and contradictory-source extractions to limited reviewer capacity.

Provenance & multi-source synthesis (§5.6)

  • Summarization loses attribution unless subagents emit claim-source mappings (URL, doc name, excerpt) that synthesis must preserve and merge.
  • Credible sources conflict? Annotate both with attribution — never silently pick one. Require publication dates so temporal differences aren't read as contradictions.
  • Render by content type: financial data as tables, news as prose, technical findings as structured lists. Distinguish well-established vs contested sections.

Cross-domain trap sheet

The exam's wrong answers are built from a small set of recurring bad instincts. If an option smells like one of these, it's a distractor:

Over-engineering — separate classifier models, routing layers that parse input before the LLM, speculative caching, timeout-fallback hybrids… when a prompt/description/config fix hasn't been tried.
Probabilistic where deterministic is required — prompt instructions or few-shot examples guarding financial/compliance actions that need hooks.
Unreliable proxies — sentiment for complexity, self-reported confidence without calibration, aggregate accuracy without segmentation.
Information destruction — generic error strings, empty-result-as-success, summarizing away numbers, dropping source attribution, converting all content to uniform format.
Nonexistent features — --batch, CLAUDE_HEADLESS, commands arrays in config JSON. If you've never seen it in the guide, it isn't real.
Burden shifting — "make developers submit smaller PRs", "have users phrase requests differently" instead of fixing the system.
Active recall

Flashcards

Tap a card (or press Space) to flip, then rate it — Got it or Again. Both ratings are remembered, and when you reach the end of the deck it restarts and shows you what you know versus what still needs review. Progress persists in your browser.

tap to reveal

Assessment

Practice tests

Same format as the real exam: the scenario sits on the left, the question and its options on the right, and items are grouped into scenario blocks. Multiple-response items state how many to select. The three full-length exams run 60 items in 120 minutes — exam length, exam pace, blueprint weighting. Results include an estimated scaled score and a per-domain breakdown like the official score report.

Which one to take Official Sample first as a cold baseline (12 items). Full-Length Exam 1 after Week 1 and Exam 2 after Week 2 — 120 different questions, no overlap. Save the Final Mock Exam for your dress rehearsal: it draws 4 of the 6 scenarios at random from a separate 90-item pool, so it stays fresh on repeat attempts and no item in it appears in Exams 1 or 2.

Domain drills

Untimed, instant feedback after each question. Hit your weak domains here.

Personalized focus

Analyze your score report

Sat the exam (or a Pearson rehearsal)? Bring your score report here and get a prioritized restudy plan: domain averages, ranked scoring upside, and your weakest objectives mapped to this academy's content. Everything is processed in your browser — the report never leaves your device. Please don't paste a teammate's report without their OK.

Add your report

Choose the PDF from Pearson VUE, or open it, Select All, Copy, and paste the text below.

No report handy? Enter numbers manually (e.g., from a practice test here)
Logistics & policy

Exam day playbook

Registering

  1. Anthropic Partner Academy → your exam's certification page.
  2. Review the Exam Guide, Terms & Conditions, Exam Policy.
  3. Register and pay ($125; partner-tier discounts apply at checkout).
  4. Create a Pearson VUE account from the confirmation.
  5. Pick a date — online proctored or a Pearson test center.
  6. Reschedule/cancel up to 24h before; inside 24h forfeits the fee.

On the day

  • Government photo ID, unexpired, name matching registration exactly (fix mismatches via certifications-support@anthropic.com before scheduling).
  • Stay in webcam view the whole session (online).
  • Workspace clear: no notes, books, phones, smart watches, headphones, second monitors, recording devices.
  • No communicating with anyone; never capture or reproduce exam content.
  • You'll accept an NDA before starting — decline and the session ends, no refund.
  • Late arrival or no-show forfeits the fee.

Retakes & validity

  • Waiting periods grow per attempt: 14 → 30 → 90 days; max 4 attempts per rolling 12 months. Fee applies each time.
  • Credential valid 12 months. On-time renewal: free, non-proctored assessment on Partner Academy. Lapse = full retake at full fee.
  • Appeals: within 14 days of notification (or of exam date for result concerns), via Pearson VUE support.
Retake chant: 14-30-90, four per year.

Test-taking strategy

  • 120 min ÷ 60 items = 2 min/question — the pace these practice tests train.
  • Read the scenario framing first; it tells you which domain's logic applies.
  • Multiple-response items state exactly how many to select.
  • Eliminate trap-sheet patterns first (over-engineering, fake flags, unreliable proxies) — usually kills two options instantly.
  • Prefer the proportionate first response: fix descriptions/criteria/config before adding infrastructure.
  • Flag and move on; a criterion-referenced exam rewards banking easy points.