Most CLAUDE.md files fail because they don't actually constrain Claude's behavior. They become too brittle and go stale the moment the project pivots. Don't treat CLAUDE.md as a brain dump. Treat it as an operating contract.

Here's a four-section structure that can hold up over months.

Why most CLAUDE.md files fail

The short version reads like this:

Project: a Next.js app for managing inventory. Use TypeScript. Prefer Tailwind. Don't use class components.