Try it: step through a session start

What Claude Code reads, in order

  1. 1. Managed policy

    An admin can place a CLAUDE.md for the whole machine, for example /etc/claude-code/CLAUDE.md on Linux. You cannot turn it off.

  2. 2. Your user file

    ~/.claude/CLAUDE.md holds your own habits for every project. Example: "Explain shell commands before running them."

  3. 3. The project file

    ./CLAUDE.md or ./.claude/CLAUDE.md is shared with your team in git. Example: "Run tests with make test." Keep it under 200 lines.

  4. 4. Your local notes and rules

    ./CLAUDE.local.md holds private notes for this project. Files in .claude/rules/ can apply only to some paths.

  5. 5. Auto memory index

    Claude reads the first 200 lines or 25KB of MEMORY.md from ~/.claude/projects/<project>/memory/. Example entry: "always use pnpm, not npm".

  6. 6. Topic files, on demand

    Notes Claude moved out of MEMORY.md are read only when they look relevant, so they do not fill the context at start.

  7. 7. Memory server, when called

    Nothing loads at start. When the agent needs an old fact, it calls a tool such as xerj_memory_recall and gets the best matches back.

Steps 1 to 6 come from the Claude Code memory docs (code.claude.com/docs/en/memory), checked 2026-10-30. Step 7 is optional and only happens if you add an MCP memory server.