Back to AI App Dev Series

CCA Exam Study Guide — Claude Certified Architect Foundations

May 31, 2026 Wasil Zafar 35 min read

Complete study guide for the CCA Foundations exam — all 5 domains, 30 task statements, 6 scenarios, 12 sample questions, and 4 preparation exercises. Every topic is mapped to the exact section in this series where it is covered with code examples.

Table of Contents

  1. Exam Overview
  2. Exam Scenarios
  3. Domain 1: Agentic Architecture (27%)
  4. Domain 2: Tool Design & MCP (18%)
  5. Domain 3: Claude Code Config (20%)
  6. Domain 4: Prompt Engineering (20%)
  7. Domain 5: Context & Reliability (15%)
  8. Sample Questions (12)
  9. Preparation Exercises (4)
  10. Appendix
What This Guide Covers: The complete CCA Foundations exam blueprint — every domain, task statement, knowledge area, and required skill. Each topic links directly to the article section in this series where it is taught with runnable code examples. Use this as your study checklist.

1. Exam Overview

The Claude Certified Architect – Foundations certification validates that practitioners can make informed decisions about tradeoffs when implementing real-world solutions with Claude. Questions are grounded in realistic scenarios drawn from actual customer use cases.

1.1 Format & Scoring

AspectDetail
FormatMultiple choice (1 correct, 3 distractors)
ScoringScaled score 100–1,000
Pass Mark720 / 1,000
PenaltyNo penalty for guessing — answer every question
Scenarios4 of 6 scenarios selected randomly per exam sitting
Experience6+ months hands-on with Claude APIs, Agent SDK, Claude Code, MCP

1.2 Domain Weights

CCA Exam Domain Weights
pie title CCA Exam Domain Distribution
    "D1: Agentic Architecture (27%)" : 27
    "D2: Tool Design & MCP (18%)" : 18
    "D3: Claude Code Config (20%)" : 20
    "D4: Prompt Engineering (20%)" : 20
    "D5: Context & Reliability (15%)" : 15
                        
DomainWeightTasksPrimary Articles
1. Agentic Architecture & Orchestration27%7
2. Tool Design & MCP Integration18%5
3. Claude Code Configuration & Workflows20%6
4. Prompt Engineering & Structured Output20%6
5. Context Management & Reliability15%6

2. Exam Scenarios

The exam presents 4 of 6 scenarios selected at random. Each scenario provides a realistic production context that frames a set of questions.

Scenario 1

Customer Support Resolution Agent

Building a customer support resolution agent using the Claude Agent SDK. The agent handles high-ambiguity requests (returns, billing disputes, account issues) through custom MCP tools (get_customer, lookup_order, process_refund, escalate_to_human). Target: 80%+ first-contact resolution while knowing when to escalate.

Domain 1Domain 2Domain 5
Scenario 2

Code Generation with Claude Code

Using Claude Code for code generation, refactoring, debugging, and documentation. Integrating into the development workflow with custom slash commands, CLAUDE.md configurations, and understanding when to use plan mode vs direct execution.

Domain 3Domain 5
Scenario 3

Multi-Agent Research System

Building a multi-agent research system using the Claude Agent SDK. A coordinator agent delegates to specialized subagents: web search, document analysis, synthesis, and report generation. The system produces comprehensive, cited reports.

Domain 1Domain 2Domain 5
Scenario 4

Developer Productivity with Claude

Building developer productivity tools using the Claude Agent SDK. The agent helps engineers explore unfamiliar codebases, understand legacy systems, generate boilerplate, and automate repetitive tasks. Uses built-in tools (Read, Write, Bash, Grep, Glob) and MCP servers.

Domain 2Domain 3Domain 1
Scenario 5

Claude Code for Continuous Integration

Integrating Claude Code into CI/CD pipelines for automated code reviews, test case generation, and PR feedback. Designing prompts that provide actionable feedback and minimize false positives.

Domain 3Domain 4
Scenario 6

Structured Data Extraction

Building a structured data extraction system using Claude. Extracts information from unstructured documents, validates output using JSON schemas, and maintains high accuracy. Must handle edge cases gracefully and integrate with downstream systems.

Domain 4Domain 5

3. Domain 1: Agentic Architecture & Orchestration (27%)

Task 1.1: Design and implement agentic loops for autonomous task execution

Knowledge of:

  • The agentic loop lifecycle: sending requests, inspecting stop_reason ("tool_use" vs "end_turn"), executing tools, and returning results Part 3 §1.1
  • How tool results are appended to conversation history for the next iteration Part 3 §1.3
  • Model-driven decision-making vs pre-configured decision trees or tool sequences

Skills in:

  • Implementing control flow that continues on "tool_use" and terminates on "end_turn" Part 3 §2
  • Adding tool results to conversation context between iterations Part 3 §1.3
  • Avoiding anti-patterns: parsing NL signals, arbitrary iteration caps, checking text content for completion Part 3 §3

Task 1.2: Orchestrate multi-agent systems with coordinator-subagent patterns

Knowledge of:

  • Hub-and-spoke architecture where a coordinator manages all inter-subagent communication Part 4 §1.1
  • Subagents operate with isolated context — they do NOT inherit the coordinator's history Part 4 §1.2
  • Coordinator's role in task decomposition, delegation, result aggregation, and subagent selection Part 4 §1.1
  • Risks of overly narrow task decomposition leading to incomplete coverage Part 4 §1.3

Skills in:

  • Designing coordinators that dynamically select subagents based on query requirements Part 4 §1.1
  • Partitioning research scope to minimize duplication Part 4 §1.2
  • Implementing iterative refinement loops (evaluate, re-delegate, re-synthesize) Part 4 §1.3
  • Routing all communication through the coordinator for observability Part 4 §1.1

Task 1.3: Configure subagent invocation, context passing, and spawning

Knowledge of:

  • The Task tool as the mechanism for spawning subagents; allowedTools must include "Task" Part 4 §2.1
  • Subagent context must be explicitly provided in the prompt — no automatic inheritance Part 4 §2.5
  • AgentDefinition configuration: descriptions, system prompts, tool restrictions Part 4 §2.1
  • fork_session for creating independent branches from a shared analysis baseline Part 5 §2.3

Skills in:

  • Including complete findings from prior agents directly in subagent prompts Part 4 §2.5
  • Using structured data formats to separate content from metadata (source URLs, page numbers) Part 4 §2.5
  • Spawning parallel subagents by emitting multiple Task tool calls in a single coordinator response Part 4 §2.6
  • Designing coordinator prompts that specify goals and quality criteria rather than step-by-step procedures Part 4 §2.5

Task 1.4: Implement multi-step workflows with enforcement and handoff patterns

Knowledge of:

  • Programmatic enforcement (hooks, prerequisite gates) vs prompt-based guidance for workflow ordering Part 4 §3.1
  • Prompt instructions alone have a non-zero failure rate for deterministic compliance requirements Part 4 §3.1
  • Structured handoff protocols for escalation: customer details, root cause, recommended actions Part 4 §3.3

Skills in:

  • Implementing programmatic prerequisites that block downstream calls until prerequisites complete Part 4 §3.2
  • Decomposing multi-concern requests into distinct items, investigating in parallel Part 4 §3.2
  • Compiling structured handoff summaries for human escalation Part 4 §3.3 Part 18 §3.1

Task 1.5: Apply Agent SDK hooks for tool call interception and data normalization

Knowledge of:

  • PostToolUse hooks that intercept tool results for transformation before the model processes them Part 5 §1.2
  • Pre-tool hooks that intercept outgoing calls to enforce compliance (e.g., blocking refunds above a threshold) Part 5 §1.1
  • Hooks for deterministic guarantees vs prompt instructions for probabilistic compliance Part 5 §1.4

Skills in:

  • Implementing PostToolUse hooks to normalize heterogeneous data formats Part 5 §1.2
  • Implementing tool call interception that blocks policy-violating actions and redirects to alternative workflows Part 5 §1.1
  • Choosing hooks over prompts when business rules require guaranteed compliance Part 5 §1.4

Task 1.6: Design task decomposition strategies for complex workflows

Knowledge of:

  • When to use fixed sequential pipelines (prompt chaining) vs dynamic adaptive decomposition Part 3 §4.3
  • Prompt chaining patterns that break reviews into sequential steps Part 3 §4.1
  • Adaptive investigation plans that generate subtasks based on intermediate discoveries Part 3 §4.2

Skills in:

  • Selecting appropriate decomposition patterns: prompt chaining for predictable reviews, dynamic decomposition for open-ended investigation Part 3 §4.3
  • Splitting large code reviews into per-file local passes plus a cross-file integration pass Part 3 §4.1
  • Decomposing open-ended tasks by first mapping structure, then creating prioritized adaptive plans Part 3 §4.2

Task 1.7: Manage session state, resumption, and forking

Knowledge of:

  • Named session resumption using --resume <session-name> Part 5 §2.2
  • fork_session for creating independent branches from a shared baseline Part 5 §2.3
  • Informing the agent about changes to previously analyzed files when resuming Part 5 §2.2
  • Why starting fresh with a structured summary is more reliable than resuming with stale tool results Part 5 §2.4

Skills in:

  • Using --resume with session names to continue named investigation sessions Part 5 §2.2
  • Using fork_session for parallel exploration branches Part 5 §2.3
  • Choosing between session resumption and fresh starts with injected summaries Part 5 §2.4

4. Domain 2: Tool Design & MCP Integration (18%)

Task 2.1: Design effective tool interfaces with clear descriptions and boundaries

Knowledge of:

  • Tool descriptions as the primary mechanism LLMs use for tool selection; minimal descriptions lead to unreliable selection Part 6 §1.1
  • Including input formats, example queries, edge cases, and boundary explanations Part 6 §1.1
  • How ambiguous or overlapping descriptions cause misrouting Part 6 §3.1
  • System prompt wording impact on tool selection: keyword-sensitive instructions create unintended associations Part 6 §4

Skills in:

  • Writing descriptions that clearly differentiate each tool's purpose, expected inputs, outputs, and when to use it Part 6 §1.1
  • Renaming tools and updating descriptions to eliminate functional overlap Part 6 §3.1
  • Splitting generic tools into purpose-specific tools with defined contracts Part 6 §3.1

Task 2.2: Implement structured error responses for MCP tools

Knowledge of:

  • The MCP isError flag for communicating tool failures Part 6 §2.1
  • Distinguishing transient, validation, business, and permission errors Part 6 §2.2
  • Why uniform errors ("Operation failed") prevent appropriate recovery Part 6 §2.2
  • Retryable vs non-retryable errors and structured metadata to prevent wasted retries Part 6 §5.4

Skills in:

  • Returning structured error metadata: errorCategory, isRetryable, human-readable descriptions Part 6 §2.2
  • Including retriable: false flags for business rule violations Part 6 §5.4
  • Implementing local error recovery within subagents for transient failures Part 6 §2.2
  • Distinguishing access failures from valid empty results Part 6 §2.1

Task 2.3: Distribute tools appropriately across agents and configure tool choice

Knowledge of:

  • Giving an agent too many tools (e.g., 18 instead of 4–5) degrades tool selection reliability Part 22 §4
  • Agents with tools outside their specialization tend to misuse them Part 22 §4.2
  • Scoped tool access: giving agents only the tools needed for their role Part 22 §4
  • tool_choice options: "auto", "any", and forced selection ({"type": "tool", "name": "..."}) Part 17 §2.2

Skills in:

  • Restricting each subagent's tool set to prevent cross-specialization misuse Part 22 §4.2
  • Replacing generic tools with constrained alternatives Part 22 §4
  • Using tool_choice forced selection to ensure a specific tool is called first Part 17 §2.2
  • Setting tool_choice: "any" to guarantee tool calls over conversational text Part 17 §2.2

Task 2.4: Integrate MCP servers into Claude Code and agent workflows

Knowledge of:

  • MCP server scoping: project-level (.mcp.json) vs user-level (~/.claude.json) Part 7 §5.3
  • Environment variable expansion (${GITHUB_TOKEN}) for credential management Part 7 §5.3
  • Tools from all configured MCP servers are discovered at connection time Part 7 §6.1
  • MCP resources for exposing content catalogs to reduce exploratory tool calls Part 7 §6.1

Skills in:

  • Configuring shared MCP servers in project-scoped .mcp.json Part 7 §5.3
  • Configuring personal servers in user-scoped ~/.claude.json Part 7 §5.3
  • Enhancing MCP tool descriptions to prevent the agent from preferring built-in tools Part 7 §6.1
  • Choosing existing community MCP servers over custom implementations for standard integrations Part 7 §6.1

Task 2.5: Select and apply built-in tools (Read, Write, Edit, Bash, Grep, Glob) effectively

Knowledge of:

  • Grep for content search (file contents for patterns); Glob for file path pattern matching Part 22 §1.2
  • Read/Write for full file operations; Edit for targeted modifications using unique text matching Part 22 §1.1
  • When Edit fails due to non-unique matches, use Read + Write as fallback Part 22 §1.1

Skills in:

  • Selecting Grep for code content search, Glob for finding files by pattern Part 22 §1.2
  • Building codebase understanding incrementally: Grep → Read → follow imports → trace flows Part 22 §1.2
  • Tracing function usage across wrapper modules by identifying exported names, then searching each Part 22 §1.3

5. Domain 3: Claude Code Configuration & Workflows (20%)

Task 3.1: Configure CLAUDE.md files with appropriate hierarchy, scoping, and modular organization

Knowledge of:

  • Hierarchy: user-level (~/.claude/CLAUDE.md), project-level (.claude/CLAUDE.md or root), directory-level Part 8 §1.1
  • User-level settings apply only to that user — not shared via version control Part 8 §1.1
  • @import syntax for referencing external files Part 8 §5.1
  • .claude/rules/ directory for topic-specific rule files Part 8 §5.1

Skills in:

  • Diagnosing configuration hierarchy issues (e.g., new team member not receiving instructions) Part 8 §1.1
  • Using @import to selectively include relevant standards files per package Part 8 §5.1
  • Splitting large CLAUDE.md files into focused files in .claude/rules/ Part 8 §5.1
  • Using /memory to verify which memory files are loaded Part 8 §5.2

Task 3.2: Create and configure custom slash commands and skills

Knowledge of:

  • Project-scoped commands in .claude/commands/ (shared) vs user-scoped in ~/.claude/commands/ (personal) Part 8 §5.3
  • Skills in .claude/skills/ with SKILL.md supporting context: fork, allowed-tools, argument-hint Part 8 §3.2
  • context: fork for running skills in isolated sub-agent context Part 8 §3.2

Skills in:

  • Creating project-scoped slash commands for team-wide availability Part 8 §5.3
  • Using context: fork to isolate verbose skill output Part 8 §3.2
  • Configuring allowed-tools in skill frontmatter to restrict tool access Part 8 §3.2
  • Using argument-hint to prompt for required parameters Part 8 §3.2

Task 3.3: Apply path-specific rules for conditional convention loading

Knowledge of:

  • .claude/rules/ files with YAML frontmatter paths fields containing glob patterns Part 8 §5.1
  • Path-scoped rules load only when editing matching files, reducing irrelevant context Part 8 §5.1
  • Glob-pattern rules vs directory-level CLAUDE.md for conventions spanning multiple directories Part 8 §5.1

Skills in:

  • Creating files with path scoping (e.g., paths: ["terraform/**/*"]) Part 8 §5.1
  • Using glob patterns for file-type conventions regardless of location (e.g., **/*.test.tsx) Part 8 §5.1
  • Choosing path-specific rules over subdirectory CLAUDE.md for cross-directory conventions Part 8 §5.1

Task 3.4: Determine when to use plan mode vs direct execution

Knowledge of:

  • Plan mode for complex tasks: large-scale changes, multiple valid approaches, architectural decisions Part 9 §1
  • Direct execution for simple, well-scoped changes Part 9 §1.1
  • Plan mode enables safe exploration before committing to changes Part 9 §1
  • Explore subagent for isolating verbose discovery output Part 9 §1.1

Skills in:

  • Selecting plan mode for architectural implications (microservice restructuring, 45+ file migrations) Part 9 §1
  • Selecting direct execution for well-understood changes with clear scope Part 9 §1.1
  • Using the Explore subagent for verbose discovery phases Part 9 §1.1
  • Combining plan mode for investigation with direct execution for implementation Part 9 §1

Task 3.5: Apply iterative refinement techniques for progressive improvement

Knowledge of:

  • Concrete input/output examples as the most effective way to communicate transformations Part 10 §2
  • Test-driven iteration: write tests first, iterate by sharing test failures Part 9 §2.1
  • The interview pattern: having Claude ask questions to surface considerations Part 10 §2
  • When to provide all issues at once (interacting) vs sequentially (independent) Part 9 §2.1

Skills in:

  • Providing 2–3 concrete input/output examples to clarify transformation requirements Part 10 §2
  • Writing test suites first, then iterating by sharing test failures Part 9 §2.1
  • Using the interview pattern for unfamiliar domains Part 10 §2
  • Addressing interacting issues in one message vs sequential iteration for independent issues Part 9 §2.1

Task 3.6: Integrate Claude Code into CI/CD pipelines

Knowledge of:

  • The -p (or --print) flag for non-interactive mode in automated pipelines Part 9 §4.1
  • --output-format json and --json-schema for structured CI output Part 9 §4.2
  • CLAUDE.md provides project context to CI-invoked Claude Code Part 9 §4.3
  • Session context isolation: same session that generated code is less effective at self-review Part 9 §4.3

Skills in:

  • Running Claude Code in CI with -p flag Part 9 §4.1
  • Using --output-format json with --json-schema for structured PR comments Part 9 §4.2
  • Including prior review findings in context to avoid duplicate comments Part 9 §4.3
  • Documenting testing standards in CLAUDE.md for better test generation Part 9 §4.3

6. Domain 4: Prompt Engineering & Structured Output (20%)

Task 4.1: Design prompts with explicit criteria to improve precision and reduce false positives

Knowledge of:

  • Explicit criteria over vague instructions (e.g., "flag comments only when claimed behavior contradicts actual code" vs "check comments are accurate") Part 10 §1
  • General instructions like "be conservative" fail to improve precision compared to specific categorical criteria Part 10 §1
  • High false positive rates undermine developer trust in accurate categories Part 10 §1

Skills in:

  • Writing specific review criteria defining which issues to report vs skip Part 10 §1
  • Temporarily disabling high false-positive categories to restore trust Part 10 §1
  • Defining explicit severity criteria with concrete code examples Part 10 §1

Task 4.2: Apply few-shot prompting to improve output consistency and quality

Knowledge of:

  • Few-shot examples as the most effective technique for consistently formatted output Part 10 §2
  • Few-shot examples for demonstrating ambiguous-case handling Part 10 §2
  • How few-shot examples enable generalization to novel patterns Part 10 §2
  • Effectiveness for reducing hallucination in extraction tasks Part 10 §2

Skills in:

  • Creating 2–4 targeted few-shot examples for ambiguous scenarios with reasoning Part 10 §2
  • Including examples that demonstrate the desired output format Part 10 §2
  • Providing examples distinguishing acceptable patterns from genuine issues Part 10 §2
  • Adding examples showing correct extraction from varied document formats Part 10 §2

Task 4.3: Enforce structured output using tool use and JSON schemas

Knowledge of:

  • tool_use with JSON schemas as the most reliable approach for guaranteed schema-compliant output Part 11 §1
  • tool_choice modes: "auto" (may return text), "any" (must call a tool), forced (must call specific tool) Part 11 §5.1
  • Strict JSON schemas eliminate syntax errors but NOT semantic errors (values in wrong fields) Part 11 §1
  • Schema design: required vs optional fields, enum + "other" + detail string patterns Part 11 §1

Skills in:

  • Defining extraction tools with JSON schemas and extracting from tool_use response Part 11 §1
  • Setting tool_choice: "any" for guaranteed structured output with multiple schemas Part 11 §5.1
  • Forcing a specific tool with tool_choice: {"type": "tool", "name": "..."} Part 17 §2.2
  • Designing optional/nullable fields to prevent model fabrication Part 11 §1
  • Adding enum values like "unclear" for ambiguous cases Part 11 §1

Task 4.4: Implement validation, retry, and feedback loops for extraction quality

Knowledge of:

  • Retry-with-error-feedback: appending specific validation errors to the prompt on retry Part 11 §2
  • Retries are ineffective when information is absent from the source document Part 11 §4
  • Feedback loop design: tracking detected_pattern field for dismissal analysis Part 11 §4
  • Semantic validation errors (values don't sum) vs schema syntax errors (eliminated by tool use) Part 11 §2

Skills in:

  • Implementing follow-up requests with original document, failed extraction, and specific validation errors Part 11 §2
  • Identifying when retries will be ineffective vs when they will succeed Part 11 §4
  • Adding detected_pattern fields for false positive analysis Part 13 §1
  • Designing self-correction: extracting "calculated_total" alongside "stated_total" to flag discrepancies Part 11 §2

Task 4.5: Design efficient batch processing strategies

Knowledge of:

  • Message Batches API: 50% cost savings, up to 24-hour processing, no latency SLA Part 11 §3
  • Appropriate for non-blocking workloads (overnight reports); inappropriate for blocking workflows (pre-merge checks) Part 11 §3
  • Batch API does not support multi-turn tool calling within a single request Part 11 §3
  • custom_id fields for correlating request/response pairs Part 11 §3

Skills in:

  • Matching API approach to workflow latency requirements: synchronous for blocking, batch for overnight Part 11 §3
  • Calculating batch submission frequency based on SLA constraints Part 11 §3
  • Handling batch failures: resubmitting only failed documents by custom_id Part 11 §3
  • Using prompt refinement on a sample set before batch-processing large volumes Part 11 §3

Task 4.6: Design multi-instance and multi-pass review architectures

Knowledge of:

  • Self-review limitations: model retains reasoning context, making it less likely to question its own decisions Part 11 §6.1
  • Independent review instances are more effective than self-review or extended thinking Part 11 §6.1
  • Multi-pass review: per-file local passes plus cross-file integration passes Part 11 §6.2

Skills in:

  • Using a second independent Claude instance to review generated code without the generator's reasoning context Part 11 §6.1
  • Splitting large multi-file reviews into focused per-file passes plus integration passes Part 11 §6.2
  • Running verification passes with self-reported confidence for calibrated routing Part 11 §6.2

7. Domain 5: Context Management & Reliability (15%)

Task 5.1: Manage conversation context to preserve critical information across long interactions

Knowledge of:

  • Progressive summarization risks: condensing numerical values, dates, expectations into vague summaries Part 12 §2
  • "Lost in the middle" effect: models reliably process beginnings and ends but may omit middle sections Part 12 §6.2
  • Tool results accumulate and consume tokens disproportionately to their relevance Part 12 §1
  • Complete conversation history must be passed in subsequent API requests Part 12 §1

Skills in:

  • Extracting transactional facts into a persistent "case facts" block Part 12 §1
  • Trimming verbose tool outputs to only relevant fields Part 12 §1
  • Placing key findings summaries at the beginning of aggregated inputs Part 12 §6.2
  • Modifying upstream agents to return structured data instead of verbose content Part 12 §6.3

Task 5.2: Design effective escalation and ambiguity resolution patterns

Knowledge of:

  • Appropriate escalation triggers: customer requests for a human, policy exceptions/gaps, inability to progress Part 13 §2
  • Escalating immediately when customer explicitly demands it vs offering to resolve straightforward issues Part 18 §4.1
  • Sentiment-based escalation and self-reported confidence scores are unreliable proxies Part 13 §2
  • Multiple customer matches require clarification, not heuristic selection Part 18 §4.1

Skills in:

  • Adding explicit escalation criteria with few-shot examples Part 13 §2
  • Honoring explicit customer requests for human agents immediately Part 18 §4.1
  • Escalating when policy is ambiguous or silent on the customer's request Part 13 §2
  • Asking for additional identifiers when tool results return multiple matches Part 18 §4.1

Task 5.3: Implement error propagation strategies across multi-agent systems

Knowledge of:

  • Structured error context (failure type, attempted query, partial results, alternatives) enables intelligent coordinator recovery Part 13 §1
  • Distinguishing access failures (timeouts needing retry) from valid empty results Part 6 §2.2
  • Generic error statuses hide valuable context from the coordinator Part 13 §1
  • Silently suppressing errors or terminating entire workflows on single failures are both anti-patterns Part 13 §1

Skills in:

  • Returning structured error context including failure type, what was attempted, partial results Part 13 §1
  • Having subagents implement local recovery for transient failures Part 13 §1
  • Structuring synthesis output with coverage annotations indicating gaps Part 6 §2.2

Task 5.4: Manage context effectively in large codebase exploration

Knowledge of:

  • Context degradation in extended sessions: inconsistent answers, "typical patterns" references Part 12 §6.1
  • Scratchpad files for persisting key findings across context boundaries Part 12 §6.3
  • Subagent delegation for isolating verbose exploration output Part 12 §6.1
  • Structured state persistence for crash recovery: agent exports state to manifest files Part 23 §3

Skills in:

  • Spawning subagents for specific investigation questions Part 12 §6.1
  • Maintaining scratchpad files recording key findings Part 12 §6.3
  • Summarizing findings before spawning subagents for the next phase Part 12 §6.1
  • Using /compact to reduce context during extended sessions Part 12 §6.1

Task 5.5: Design human review workflows and confidence calibration

Knowledge of:

  • Aggregate accuracy metrics (97% overall) may mask poor performance on specific document types Part 13 §7
  • Stratified random sampling for measuring error rates in high-confidence extractions Part 13 §7
  • Field-level confidence scores calibrated using labeled validation sets Part 13 §5.1
  • Validate accuracy by document type and field before automating high-confidence extractions Part 13 §7

Skills in:

  • Implementing stratified random sampling of high-confidence extractions Part 13 §7
  • Analyzing accuracy by document type and field Part 13 §5.1
  • Having models output field-level confidence scores Part 13 §5.1
  • Routing low-confidence extractions to human review Part 13 §7

Task 5.6: Preserve information provenance and handle uncertainty in multi-source synthesis

Knowledge of:

  • Source attribution lost during summarization without preserving claim-source mappings Part 20 §2
  • Structured claim-source mappings that synthesis agents must preserve and merge Part 20 §2
  • Handling conflicting statistics: annotating conflicts with source attribution, not selecting one arbitrarily Part 20 §2.2
  • Temporal data: requiring publication/collection dates to prevent misinterpreted contradictions Part 4 §2.5

Skills in:

  • Requiring subagents to output structured claim-source mappings Part 20 §2
  • Structuring reports distinguishing well-established from contested findings Part 20 §2.2
  • Requiring publication/collection dates in structured outputs Part 4 §2.5
  • Rendering different content types appropriately (financial data as tables, news as prose) Part 20 §2

8. Sample Questions

The following 12 sample questions illustrate the format and difficulty level of the CCA exam. Each includes the correct answer and explanation.

Scenario: Customer Support Resolution Agent

Q1 — Programmatic Prerequisites

Q: Production data shows that in 12% of cases, your agent skips get_customer entirely and calls lookup_order using only the customer's stated name, occasionally leading to misidentified accounts and incorrect refunds. What change would most effectively address this reliability issue?

A) Add a programmatic prerequisite that blocks lookup_order and process_refund calls until get_customer has returned a verified customer ID.
B) Enhance the system prompt to state that customer verification via get_customer is mandatory before any order operations.
C) Add few-shot examples showing the agent always calling get_customer first, even when customers volunteer order details.
D) Implement a routing classifier that analyzes each request and enables only the subset of tools appropriate for that request type.

Answer: A — When a specific tool sequence is required for critical business logic, programmatic enforcement provides deterministic guarantees that prompt-based approaches cannot. Options B and C rely on probabilistic LLM compliance, which is insufficient when errors have financial consequences.

Task 1.4Domain 1
Q2 — Tool Descriptions

Q: Production logs show the agent frequently calls get_customer when users ask about orders (e.g., "check my order #12345"), instead of calling lookup_order. Both tools have minimal descriptions ("Retrieves customer information" / "Retrieves order details") and accept similar identifier formats. What's the most effective first step to improve tool selection reliability?

A) Add few-shot examples to the system prompt demonstrating correct tool selection patterns, with 5-8 examples showing order-related queries routing to lookup_order.
B) Expand each tool's description to include input formats it handles, example queries, edge cases, and boundaries explaining when to use it versus similar tools.
C) Implement a routing layer that parses user input before each turn and pre-selects the appropriate tool based on detected keywords and identifier patterns.
D) Consolidate both tools into a single lookup_entity tool that accepts any identifier and internally determines which backend to query.

Answer: B — Tool descriptions are the primary mechanism LLMs use for tool selection. When descriptions are minimal, models lack the context to differentiate between similar tools. Option B directly addresses this root cause with a low-effort, high-leverage fix.

Task 2.1Domain 2
Q3 — Escalation Calibration

Q: Your agent achieves 55% first-contact resolution, well below the 80% target. Logs show it escalates straightforward cases (standard damage replacements with photo evidence) while attempting to autonomously handle complex situations requiring policy exceptions. What's the most effective way to improve escalation calibration?

A) Add explicit escalation criteria to your system prompt with few-shot examples demonstrating when to escalate versus resolve autonomously.
B) Have the agent self-report a confidence score (1-10) before each response and automatically route requests to humans when confidence falls below a threshold.
C) Deploy a separate classifier model trained on historical tickets to predict which requests need escalation before the main agent begins processing.
D) Implement sentiment analysis to detect customer frustration levels and automatically escalate when negative sentiment exceeds a threshold.

Answer: A — Adding explicit escalation criteria with few-shot examples directly addresses the root cause: unclear decision boundaries. This is the proportionate first response before adding infrastructure.

Task 5.2Domain 5

Scenario: Code Generation with Claude Code

Q4 — Custom Commands Scoping

Q: You want to create a custom /review slash command that runs your team's standard code review checklist. This command should be available to every developer when they clone or pull the repository. Where should you create this command file?

A) In the .claude/commands/ directory in the project repository
B) In ~/.claude/commands/ in each developer's home directory
C) In the CLAUDE.md file at the project root
D) In a .claude/config.json file with a commands array

Answer: A — Project-scoped custom slash commands should be stored in the .claude/commands/ directory within the repository. These commands are version-controlled and automatically available to all developers when they clone or pull the repo.

Task 3.2Domain 3
Q5 — Plan Mode vs Direct Execution

Q: You've been assigned to restructure the team's monolithic application into microservices. This will involve changes across dozens of files and requires decisions about service boundaries and module dependencies. Which approach should you take?

A) Enter plan mode to explore the codebase, understand dependencies, and design an implementation approach before making changes.
B) Start with direct execution and make changes incrementally, letting the implementation reveal the natural service boundaries.
C) Use direct execution with comprehensive upfront instructions detailing exactly how each service should be structured.
D) Begin in direct execution mode and only switch to plan mode if you encounter unexpected complexity during implementation.

Answer: A — Plan mode is designed for complex tasks involving large-scale changes, multiple valid approaches, and architectural decisions. It enables safe codebase exploration and design before committing to changes.

Task 3.4Domain 3
Q6 — Path-Specific Rules

Q: Your codebase has distinct areas with different coding conventions: React components use functional style with hooks, API handlers use async/await with specific error handling, and database models follow a repository pattern. Test files are spread throughout the codebase alongside the code they test (e.g., Button.test.tsx next to Button.tsx), and you want all tests to follow the same conventions regardless of location. What's the most maintainable way to ensure Claude automatically applies the correct conventions when generating code?

A) Create rule files in .claude/rules/ with YAML frontmatter specifying glob patterns to conditionally apply conventions based on file paths
B) Consolidate all conventions in the root CLAUDE.md file under headers for each area, relying on Claude to infer which section applies
C) Create skills in .claude/skills/ for each code type that include the relevant conventions in their SKILL.md files
D) Place a separate CLAUDE.md file in each subdirectory containing that area's specific conventions

Answer: A.claude/rules/ with glob patterns allows conventions to be automatically applied based on file paths regardless of directory location, which is essential for test files spread throughout the codebase.

Task 3.3Domain 3

Scenario: Multi-Agent Research System

Q7 — Task Decomposition Gaps

Q: After running the system on the topic "impact of AI on creative industries," you observe that each subagent completes successfully: the web search agent finds relevant articles, the document analysis agent summarizes papers correctly, and the synthesis agent produces coherent output. However, the final reports cover only visual arts, completely missing music, writing, and film production. When you examine the coordinator's logs, you see it decomposed the topic into three subtasks: "AI in digital art creation," "AI in graphic design," and "AI in photography." What is the most likely root cause?

A) The synthesis agent lacks instructions for identifying coverage gaps in the findings it receives from other agents.
B) The coordinator agent's task decomposition is too narrow, resulting in subagent assignments that don't cover all relevant domains of the topic.
C) The web search agent's queries are not comprehensive enough and need to be expanded to cover more creative industry sectors.
D) The document analysis agent is filtering out sources related to non-visual creative industries due to overly restrictive relevance criteria.

Answer: B — The coordinator's logs reveal the root cause directly: it decomposed "creative industries" into only visual arts subtasks, completely omitting music, writing, and film. The subagents executed their assigned tasks correctly within their assigned scope.

Task 1.2Domain 1
Q8 — Error Propagation

Q: The web search subagent times out while researching a complex topic. You need to design how this failure information flows back to the coordinator agent. Which error propagation approach best enables intelligent recovery?

A) Return structured error context to the coordinator including the failure type, the attempted query, any partial results, and potential alternative approaches.
B) Implement automatic retry logic with exponential backoff within the subagent, returning a generic "search unavailable" status only after all retries are exhausted.
C) Catch the timeout within the subagent and return an empty result set marked as successful.
D) Propagate the timeout exception directly to a top-level handler that terminates the entire research workflow.

Answer: A — Structured error context gives the coordinator the information it needs to make intelligent recovery decisions. Option B hides valuable context, option C suppresses failure as success, and option D terminates the entire workflow unnecessarily.

Task 5.3Domain 5
Q9 — Scoped Cross-Role Tools

Q: During testing, you observe that the synthesis agent frequently needs to verify specific claims while combining findings. Currently, when verification is needed, the synthesis agent returns control to the coordinator, which invokes the web search agent, then re-invokes synthesis with results. This adds 2-3 round trips per task and increases latency by 40%. Your evaluation shows that 85% of these verifications are simple fact-checks (dates, names, statistics) while 15% require deeper investigation. What's the most effective approach to reduce overhead while maintaining system reliability?

A) Give the synthesis agent a scoped verify_fact tool for simple lookups, while complex verifications continue delegating to the web search agent through the coordinator.
B) Have the synthesis agent accumulate all verification needs and return them as a batch to the coordinator at the end of its pass, which then sends them all to the web search agent at once.
C) Give the synthesis agent access to all web search tools so it can handle any verification need directly without round-trips through the coordinator.
D) Have the web search agent proactively cache extra context around each source during initial research, anticipating what the synthesis agent might need to verify.

Answer: A — This applies the principle of least privilege by giving the synthesis agent only what it needs for the 85% common case while preserving the existing coordination pattern for complex cases.

Task 2.3Domain 2

Scenario: Claude Code for Continuous Integration

Q10 — Non-Interactive CI Mode

Q: Your pipeline script runs claude "Analyze this pull request for security issues" but the job hangs indefinitely. Logs indicate Claude Code is waiting for interactive input. What's the correct approach to run Claude Code in an automated pipeline?

A) Add the -p flag: claude -p "Analyze this pull request for security issues"
B) Set the environment variable CLAUDE_HEADLESS=true before running the command
C) Redirect stdin from /dev/null: claude "Analyze this pull request for security issues" < /dev/null
D) Add the --batch flag: claude --batch "Analyze this pull request for security issues"

Answer: A — The -p (or --print) flag is the documented way to run Claude Code in non-interactive mode. The other options reference non-existent features or use workarounds that do not correctly address Claude Code's command syntax.

Task 3.6Domain 3
Q11 — Batch API Appropriateness

Q: Your team wants to reduce API costs for automated analysis. Currently, real-time Claude calls power two workflows: (1) a blocking pre-merge check that must complete before developers can merge, and (2) a technical debt report generated overnight for review the next morning. Your manager proposes switching both to the Message Batches API for its 50% cost savings. How should you evaluate this proposal?

A) Use batch processing for the technical debt reports only; keep real-time calls for pre-merge checks.
B) Switch both workflows to batch processing with status polling to check for completion.
C) Keep real-time calls for both workflows to avoid batch result ordering issues.
D) Switch both to batch processing with a timeout fallback to real-time if batches take too long.

Answer: A — The Message Batches API offers 50% cost savings but has processing times up to 24 hours with no guaranteed latency SLA. This makes it unsuitable for blocking pre-merge checks but ideal for overnight batch jobs like technical debt reports.

Task 4.5Domain 4
Q12 — Multi-Pass Review

Q: A pull request modifies 14 files across the stock tracking module. Your single-pass review analyzing all files together produces inconsistent results: detailed feedback for some files but superficial comments for others, obvious bugs missed, and contradictory feedback — flagging a pattern as problematic in one file while approving identical code elsewhere in the same PR. How should you restructure the review?

A) Split into focused passes: analyze each file individually for local issues, then run a separate integration-focused pass examining cross-file data flow.
B) Require developers to split large PRs into smaller submissions of 3-4 files before the automated review runs.
C) Switch to a higher-tier model with a larger context window to give all 14 files adequate attention in one pass.
D) Run three independent review passes on the full PR and only flag issues that appear in at least two of the three runs.

Answer: A — Splitting reviews into focused passes directly addresses the root cause: attention dilution when processing many files at once. File-by-file analysis ensures consistent depth, while a separate integration pass catches cross-file issues.

Task 4.6Domain 4

9. Preparation Exercises

Exercise 1

Build a Multi-Tool Agent with Escalation Logic

Objective: Practice designing an agentic loop with tool integration, structured error handling, and escalation patterns.

  1. Define 3-4 MCP tools with detailed descriptions that clearly differentiate each tool's purpose, expected inputs, and boundary conditions. Include at least two tools with similar functionality that require careful description to avoid selection confusion.
  2. Implement an agentic loop that checks stop_reason to determine whether to continue tool execution or present the final response. Handle both "tool_use" and "end_turn" stop reasons correctly.
  3. Add structured error responses to your tools: include errorCategory (transient/validation/permission), isRetryable boolean, and human-readable descriptions. Test that the agent handles each error type appropriately.
  4. Implement a programmatic hook that intercepts tool calls to enforce a business rule, redirecting to an escalation workflow when triggered.
  5. Test with multi-concern messages and verify the agent decomposes the request, handles each concern, and synthesizes a unified response.

Domains reinforced: Domain 1 (Agentic Architecture & Orchestration), Domain 2 (Tool Design & MCP Integration), Domain 5 (Context Management & Reliability)

Domain 1Domain 2Domain 5
Exercise 2

Configure Claude Code for a Team Development Workflow

Objective: Practice configuring CLAUDE.md hierarchies, custom slash commands, path-specific rules, and MCP server integration for a multi-developer project.

  1. Create a project-level CLAUDE.md with universal coding standards and testing conventions. Verify that instructions placed at the project level are consistently applied across all team members.
  2. Create .claude/rules/ files with YAML frontmatter glob patterns for different code areas. Test that rules load only when editing matching files.
  3. Create a project-scoped skill in .claude/skills/ with context: fork and allowed-tools restrictions. Verify the skill runs in isolation without polluting the main conversation context.
  4. Configure an MCP server in .mcp.json with environment variable expansion for credentials. Add a personal experimental MCP server in ~/.claude.json and verify both are available simultaneously.
  5. Test plan mode versus direct execution on tasks of varying complexity: a single-file bug fix, a multi-file library migration, and a new feature with multiple valid implementation approaches. Observe when plan mode provides value.

Domains reinforced: Domain 3 (Claude Code Configuration & Workflows), Domain 2 (Tool Design & MCP Integration)

Domain 3Domain 2
Exercise 3

Build a Structured Data Extraction Pipeline

Objective: Practice designing JSON schemas, using tool_use for structured output, implementing validation-retry loops, and designing batch processing strategies.

  1. Define an extraction tool with a JSON schema containing required and optional fields, an enum with an "other" + detail string pattern, and nullable fields for information that may not exist in source documents. Process documents where some fields are absent and verify the model returns null rather than fabricating values.
  2. Implement a validation-retry loop: when Pydantic or JSON schema validation fails, send a follow-up request including the document, the failed extraction, and the specific validation error. Track which errors are resolvable via retry versus which are not.
  3. Add few-shot examples demonstrating extraction from documents with varied formats and verify improved handling of structural variety.
  4. Design a batch processing strategy: submit a batch of 100 documents using the Message Batches API, handle failures by custom_id, resubmit failed documents with modifications, and calculate total processing time relative to SLA constraints.
  5. Implement a human review routing strategy: have the model output field-level confidence scores, route low-confidence extractions to human review, and analyze accuracy by document type and field to verify consistent performance.

Domains reinforced: Domain 4 (Prompt Engineering & Structured Output), Domain 5 (Context Management & Reliability)

Domain 4Domain 5
Exercise 4

Design and Debug a Multi-Agent Research Pipeline

Objective: Practice orchestrating subagents, managing context passing, implementing error propagation, and handling synthesis with provenance tracking.

  1. Build a coordinator agent that delegates to at least two subagents (e.g., web search and document analysis). Ensure the coordinator's allowedTools includes "Task" and that each subagent receives its research findings directly in its prompt rather than relying on automatic context inheritance.
  2. Implement parallel subagent execution by having the coordinator emit multiple Task tool calls in a single response. Measure the latency improvement compared to sequential execution.
  3. Design structured output for subagents that separates content from metadata: each finding should include a claim, evidence excerpt, source URL/document name, and publication date. Verify that the synthesis subagent preserves source attribution when combining findings.
  4. Implement error propagation: simulate a subagent timeout and verify the coordinator receives structured error context (failure type, attempted query, partial results). Test that the coordinator can proceed with partial results and annotate the final output with coverage gaps.
  5. Test with conflicting source data and verify the synthesis output preserves both values with source attribution rather than arbitrarily selecting one, and structures the report to distinguish well-established from contested findings.

Domains reinforced: Domain 1 (Agentic Architecture & Orchestration), Domain 2 (Tool Design & MCP Integration), Domain 5 (Context Management & Reliability)

Domain 1Domain 2Domain 5

10. Appendix

Technologies & Concepts on the Exam

  • Claude Agent SDK — Agent definitions, agentic loops, stop_reason handling, hooks (PostToolUse, tool call interception), subagent spawning via Task tool, allowedTools
  • Model Context Protocol (MCP) — MCP servers, tools, resources, isError flag, tool descriptions, .mcp.json, environment variable expansion
  • Claude Code — CLAUDE.md hierarchy, .claude/rules/ with YAML frontmatter, .claude/commands/, .claude/skills/ with context: fork/allowed-tools/argument-hint, plan mode, /memory, /compact, --resume, fork_session, Explore subagent
  • Claude Code CLI-p / --print flag, --output-format json, --json-schema
  • Claude APItool_use with JSON schemas, tool_choice ("auto", "any", forced), stop_reason values, max_tokens, system prompts
  • Message Batches API — 50% cost savings, 24-hour window, custom_id, no multi-turn tool calling
  • JSON Schema — Required/optional fields, enum types, nullable, "other" + detail patterns, strict mode
  • Pydantic — Schema validation, semantic validation, retry loops
  • Built-in tools — Read, Write, Edit, Bash, Grep, Glob
  • Few-shot prompting — Targeted examples, format demonstration, generalization
  • Prompt chaining — Sequential decomposition into focused passes
  • Context window — Token budgets, progressive summarization, lost-in-the-middle, scratchpad files
  • Session management — Resumption, fork_session, named sessions, isolation
  • Confidence scoring — Field-level confidence, calibration with validation sets, stratified sampling

Out of Scope (NOT on the exam)

  • Fine-tuning or training custom models
  • API authentication, billing, or account management
  • Deploying/hosting MCP servers (infrastructure, networking, containers)
  • Claude's internal architecture, training, or weights
  • Constitutional AI, RLHF, or safety training methodologies
  • Embedding models or vector database implementation
  • Computer use (browser automation, desktop interaction)
  • Vision/image analysis capabilities
  • Streaming API implementation or server-sent events
  • Rate limiting, quotas, or API pricing calculations
  • OAuth, API key rotation, or authentication protocols
  • Cloud provider configurations (AWS, GCP, Azure)
  • Performance benchmarking or model comparison metrics
  • Prompt caching implementation details
  • Token counting algorithms or tokenization specifics
Exam Preparation Checklist: (1) Build an agent with the Claude Agent SDK. (2) Configure Claude Code with CLAUDE.md hierarchy, path-specific rules, skills with frontmatter, and MCP servers. (3) Design and test MCP tools with differentiated descriptions and structured error responses. (4) Build a structured data extraction pipeline with tool_use, validation-retry, and batch processing. (5) Practice few-shot examples for ambiguous scenarios. (6) Study context management: fact extraction, scratchpad files, subagent delegation. (7) Review escalation and human-in-the-loop patterns. (8) Complete the Practice Exam.