Key points
- Three levels: user (~/.claude/CLAUDE.md), project (root CLAUDE.md or .claude/CLAUDE.md), directory (a CLAUDE.md inside a subdirectory).
- The user-level file is private to one developer. It never enters version control, so teammates do not see it.
- Project-level files are committed, so everyone who clones or pulls gets them with no setup.
- @import references an external file from a CLAUDE.md, so each package can include only the standards it needs.
- .claude/rules/ holds topic-specific rule files (testing, API conventions, deployment) as an alternative to one monolithic file.
- /memory shows which memory files are actually loaded in the current session.
Skills the exam expects
- Diagnose why a new teammate is not getting an instruction (it is in someone's user-level file, not the project file).
- Use @import to pull selected standards files into a package's CLAUDE.md based on what that package needs.
- Split a bloated CLAUDE.md into focused files under .claude/rules/.
- Use /memory to verify loaded files and explain inconsistent behavior across sessions or machines.
Common misconceptions
- "Anything in a CLAUDE.md is shared with the team." Only project and directory files are committed; the user-level file is personal.
- "A bigger CLAUDE.md means Claude knows more." It mostly means every session pays for rules that do not apply to the current work.
- "If the behavior is inconsistent, rewrite the rule." First check with /memory whether the file is even loaded.
Watch for
- Team conventions stored in a user-level file.
- The same standard pasted into several package files instead of referenced once.
- A single root file covering every topic for every package.
Practice task 3.1
56 practice items cover this task in CCA Prep Studio: flashcards, matching, scenario questions and explain-it-back exercises, each tracked toward your mastery score.