Every new Claude Code session starts cold. Give it a CLAUDE.md and it stops starting cold — the file is read automatically at the start of every session so you stop re-explaining your project. Answer 10 short questions, copy the output into your repo root, commit, move on.
Why this matters — lesson 5 of the 6 Claude-Code principles →
Drop this file into the root of your repository (same level as package.json / pyproject.toml). Claude Code picks it up automatically on the next session. Nested CLAUDE.md files are also supported — put a second one inside a subdirectory if that subsystem has its own conventions.
Fill out the form above and click Generate CLAUDE.md.
Include. Anything you would otherwise have to re-explain in the first 15 minutes of every session. Data formats. Library preferences. Naming conventions. Test commands. Deploy commands. Anti-patterns. The quirks nobody remembers until they cost an afternoon.
Leave out. Secrets (never paste a key, token, or password — put env-var NAMES only). The full README contents (link to it instead). Historical decisions that are no longer load-bearing. Anything that changes every sprint.
Keep it under ~200 lines. If it grows past that, split it: put subsystem-specific conventions in a nested CLAUDE.md inside the relevant folder.
Update it as decisions get made. A one-line "we chose pnpm over npm because lockfile determinism" line saves the next session from re-litigating.