Does a line in auto memory steer the next session like CLAUDE.md does? 3 of 4 runs vs 4 of 4, and 0 of 4 with neither A developer measured whether a single fact stored in Claude Code's auto memory (MEMORY.md) steers a fresh session as reliably as the same line in CLAUDE.md, finding the auto-memory line was applied first-attempt in 3 of 4 sessions versus 4 of 4 for CLAUDE.md, and 0 of 4 when neither was present. The experiment, run on Claude Code 2.1.278, used a throwaway project with a hidden environment variable checked against a SHA-256 hash so the fix could not be derived from project files. The author also documented undocumented behavior: the project path is escaped into the memory directory name by replacing every slash and dot with a hyphen. A one-line fact stored in Claude Code's auto memory was applied on the first attempt in 3 of 4 fresh sessions and after one failure in the 4th . The same line in CLAUDE.md was applied first-attempt in 4 of 4. With neither, 0 of 4 sessions recovered. Measured on Claude Code 2.1.278. A reader asked a fair question under an earlier post: "How are you measuring whether a captured memory genuinely helped a later session?" We had not been measuring it. We had been assuming that a note Claude wrote to itself in one session would shape the next one, the way a CLAUDE.md line does. This post is the measurement we built to check that assumption, with the numbers as they came out and one result that surprised us. Before designing the experiment we fetched the official memory page https://code.claude.com/docs/en/memory https://code.claude.com/docs/en/memory , fetched 2026-09-22 to find out exactly what auto memory is on disk, because the experiment has to plant a memory file by hand and the file has to land where Claude Code actually reads it. The page frames the two mechanisms as siblings: "Claude Code has two complementary memory systems. Both are loaded at the start of every conversation. Claude treats them as context, not enforced configuration." That last sentence matters for interpreting the results below. Neither mechanism forces behaviour; both are text the model reads. On location: "Each project gets its own memory directory at ~/.claude/projects/