CCAR-F · Study Guide

← Study guide

Domain 1 · 27% of the exam

Agentic Architecture & Orchestration

Design and implement agentic systems using Claude's API, including loop management, orchestration patterns, guardrails, and the Claude Agent SDK.

Task statements

  1. 1.1

    Agentic Loops

    The agentic loop is the core execution cycle: Claude receives a prompt, optionally calls tools, and the loop continues until Claude signals it is finished. Getting the termination condition right is the single most tested concept in this domain.

  2. 1.2

    Multi-Agent Orchestration

    The exam's multi-agent pattern is hub-and-spoke. A coordinator splits the task, passes context explicitly, and aggregates results. Subagents do not message each other and do not inherit the coordinator's history.

  3. 1.3

    Subagent Invocation and Context Passing

    The coordinator spawns subagents with the Task tool (Agent in current Claude Code) and must put Task or Agent in allowedTools. Each subagent receives only the prompt it is given, including structured source metadata.

  4. 1.4

    Workflow Enforcement and Handoff

    Task 1.4 is prompt guidance versus a programmatic gate. Money, security, and compliance need code that blocks the tool until its precondition is true. A human handoff has five fields, including the refund amount when one applies.

  5. 1.5

    Agent SDK Hooks

    Agent SDK hooks implement the programmatic side of the 1.4 enforcement spectrum. PreToolUse blocks or rewrites a tool call before it runs. PostToolUse normalises the result after it runs and cannot undo the side effect.

  6. 1.6

    Task Decomposition Strategies

    Task decomposition splits complex work into pieces an agent can handle. The exam tests choosing a fixed sequential pipeline or dynamic adaptive decomposition, and recognising attention dilution when too many items share one pass.

  7. 1.7

    Session State and Resumption

    Session management chooses how an agent keeps continuity. --resume continues a valid history. fork_session branches that history to compare approaches. After files change, a fresh session with summary injection is the fix, because a fork still carries the stale tool results.