The single most common reason a CLAUDE.md \"doesn't work\" isn't the content — it's the location.
Put a CLAUDE.md in your project root for project-specific instructions, and a ~/.claude/CLAUDE.md for instructions you want everywhere. Claude reads both and combines them — the project file layers on top of the global one. If Claude isn't picking up your rules, 90% of the time the file is in the wrong folder or has the wrong name.
Additive, not either/or: global → project root → nested, more specific layering on top. Keep universal rules global, project rules in the root, nested only when a subdirectory needs different behavior. Everything stacked is read EVERY conversation, so total length is a real cost — working ceiling under ~2,000 tokens. See how long CLAUDE.md should be and optimize CLAUDE.md.
Shared repo-wide rules in the root CLAUDE.md; each package gets its own nested CLAUDE.md for its unique stack/conventions. Don't cram every package's rules into one giant root file — that's the bloat that makes a CLAUDE.md stop working.
CLAUDE.md isn't only a coding-tool feature. In Cowork mode and the Claude apps it's working memory for non-code work — a job search, consulting clients, your inbox. Same location logic: global for how you work in general, per-project for specifics. See CLAUDE.md in Cowork and what is a CLAUDE.md file.
If the file is placed correctly and still ignored, the problem is usually the content — see CLAUDE.md ignored.
Describe your role and project in CoworKit's free Builder — it generates a clean, correctly-scoped CLAUDE.md and gives it a Claude Fluency Score across clarity, specificity, format, voice, boundaries, and token count, so you know it fits under budget before you drop it in your project root. Already running one that's ignored? Paste a real chat into Session Review.
Where does CLAUDE.md go?
In your project's root folder as CLAUDE.md for project-specific instructions, and/or in ~/.claude/CLAUDE.md for instructions that apply to every project. Claude reads both and combines them.
What's the difference between global and project CLAUDE.md?
Global (~/.claude/CLAUDE.md) applies to all projects; project (./CLAUDE.md) applies only to that project and layers on top of the global one.
Can I have more than one CLAUDE.md?
Yes. A global file, a project-root file, and nested files in subdirectories all combine, with more specific files layering on top.
Why isn't Claude reading my CLAUDE.md?
Most common: wrong filename (must be exactly CLAUDE.md) or wrong location (project root or ~/.claude/). If the path is right, the issue is usually the content.
Does CLAUDE.md location matter in Cowork mode?
Yes — same logic. A global file sets how you work in general; a per-project file holds the specifics.
Practical guides and prompt patterns — no fluff, unsubscribe any time.