You write a CLAUDE.md, describe the project beautifully, and the next session you're still repeating every item: "remember this voice," "don't touch that folder," "check before you say done." It feels like the file does nothing. The problem isn't a lazy agent — it's that you wrote a description, and a description is something the agent reads for context and then freely does its own thing anyway.
A CLAUDE.md that earns its keep, whatever the project, commands: default to this, stop and ask there, this zone needs care, done means verified like so. The frame below is as lean as it gets while still covering those five. Drop the flattering prose, keep the parts that force behavior:
✕ Written like a README
✓ Written like law
Paste this into CLAUDE.md and fill the brackets. The two highest-value sections are "Stop and ask" and "Before you say it's done" — that's where one line of law catches most of the wrong guesses and the unchecked "Done!" Keep it short; each line is an instruction, not a paragraph.