CCAR-F Claude Certified Architect — Foundations

Deck 3 — Claude Code Configuration & Workflows (Domain 3, 20%)

50 cards. Cards 1–25 = configuration (paths, precedence, rules, commands, skills). 26–50 = workflows, plan mode, CI.

This deck is mostly pure recall. Drill it until the paths come out automatically.


1

Q: Path for user-level memory that applies to all your projects? A: ~/.claude/CLAUDE.md.

2

Q: Is ~/.claude/CLAUDE.md version-controlled? A: No. Anything the team must have cannot go there.

3

Q: Two valid locations for project-level CLAUDE.md? A: CLAUDE.md at the repo root, or .claude/CLAUDE.md.

4

Q: How do you scope conventions to one directory's subtree? A: A CLAUDE.md in that directory.

5

Q: How do you compose one memory file into another? A: @import ./path/to/file.md.

6

Q: Command to verify which memory files are actually loaded? A: /memory.

7

Q: Directory for topic-scoped rules files? A: .claude/rules/.

8

Q: Which frontmatter key scopes a rules file by file pattern? A: paths: — an array of globs.

9

Q: 🎯 Test conventions must apply to test files across many directories. Rules file or subdirectory CLAUDE.md? A: .claude/rules/testing.md with paths: globs. A glob matches wherever the files are; a subdirectory CLAUDE.md would need duplicating and would miss new directories.

10

Q: Write the frontmatter for a rules file covering React test files. A: paths: ["**/*.test.tsx"] (add "**/*.test.ts" as needed).

11

Q: Directory for project slash commands? A: .claude/commands/ — committed, so the whole team gets them.

12

Q: Directory for user slash commands? A: ~/.claude/commands/ — yours only.

13

Q: How is a slash command defined? A: One Markdown file per command. The filename becomes the command name.

14

Q: Is there a commands array in .claude/config.json? A: No. Non-existent option; a distractor.

15

Q: Path for a project skill named migrate-schema? A: .claude/skills/migrate-schema/SKILL.md.

16

Q: Which SKILL.md frontmatter field runs the skill in an isolated context? A: context: fork.

17

Q: Which field restricts what a skill may do? A: allowed-tools.

18

Q: Which field tells the user what arguments a skill takes? A: argument-hint.

19

Q: Skills vs CLAUDE.md — the load-timing difference? A: Skills are on-demand (loaded when invoked). CLAUDE.md is always loaded.

20

Q: A procedure is relevant maybe once a month. Where does it go? A: A skill — not CLAUDE.md, which would carry it in every session's context.

21

Q: A verbose multi-step procedure pollutes the main conversation. Fix? A: A skill with context: fork.

22

Q: Team-wide MCP servers — which file, committed or not? A: .mcp.json at the repo root, committed.

23

Q: Personal style preference you don't want to impose. Where? A: ~/.claude/CLAUDE.md.

24

Q: A teammate clones the repo. Which of your configs do they get? A: Project CLAUDE.md, .claude/rules/, .claude/commands/, .claude/skills/, .mcp.json. Not anything under ~/.claude/.

25

Q: You put a rules file at the repo root instead of .claude/rules/. Consequence? A: It isn't loaded as a rule. /memory won't show it.


26

Q: Four triggers for plan mode? A: Large scale of change · multiple viable approaches · architectural decisions · multi-file coordination.

27

Q: When is direct execution correct? A: Small, well-defined, single-file, one-obvious-approach changes.

28

Q: Why not use plan mode for everything? A: It adds a planning round-trip with no benefit when the change is mechanical and unambiguous.

29

Q: Which subagent isolates verbose discovery from the main context? A: The Explore subagent.

30

Q: What does the Explore subagent return to the main context? A: A summary of findings — not the file dumps and search output that produced it.

31

Q: How many examples does the guide recommend for iterative refinement of generated output? A: 2–3 concrete input/output examples.

32

Q: Name the refinement approach where you let tests drive successive iterations. A: Test-driven iteration.

33

Q: Name the pattern where the agent asks you clarifying questions before generating. A: The interview pattern.

34

Q: You have five separate issues with generated code. Report them how? A: All in one message, not one at a time.

35

Q: Why batch feedback rather than send it sequentially? A: Sequential fixes cause churn and regressions — fixing #1 may undo #3. One message lets the agent reconcile them together.

36

Q: Flag for non-interactive / headless mode? A: -p (or --print).

37

Q: Flag for machine-parseable output? A: --output-format json.

38

Q: Flag to constrain the shape of that output? A: --json-schema.

39

Q: Write a headless CI invocation with structured output. A: claude -p "<prompt>" --output-format json --json-schema ./ci/schema.json

40

Q: Is CLAUDE_HEADLESS a real environment variable? A: No. Use -p / --print.

41

Q: Is --batch a real CLI flag? A: No. The Message Batches API is an API surface, not a CLI flag.

42

Q: How does a CI run get project conventions? A: CLAUDE.md — it's read in headless mode too. It's the CI context carrier.

43

Q: 🎯 Can the session that generated code reliably review it? A: No. The generating session is worse at reviewing its own code — it carries the assumptions that produced the error.

44

Q: So what does review require? A: A separate instance with fresh context. Independence, not more reasoning.

45

Q: Would enabling extended thinking on the generating instance fix its self-review? A: No — more reasoning inside the same contaminated context. This is the interesting distractor.

46

Q: CI code review produces too many false positives. First move? A: Replace vague instructions with explicit criteria, and temporarily disable the highest-FP categories.

47

Q: Which CI workload is safe to batch? A: The nightly aggregate report. Never the pre-merge blocking check.

48

Q: Same session and the context is filling. Command? A: /compact.

49

Q: Coming back to yesterday's task, workspace unchanged? A: --resume <session-name>.

50

Q: Where do you put a repeatable workflow so every teammate can run it? A: A Markdown file in .claude/commands/, committed.