# CLAUDE.md starter

Save this as `CLAUDE.md` in the top folder of your project. Claude Code reads it
at the start of every session, before your first message.

Replace everything in square brackets. Delete every line you do not need. A
short file that gets followed beats a thorough one that gets skipped.

Anthropic's guidance is to target under 200 lines, because longer files reduce
adherence. The sharper test for every single line below: **would removing this
line cause Claude to make a mistake?** If not, cut it. (The test is ours; the
200-line target is Anthropic's.)

---

## What this project is

[One or two sentences. What the work is, who it is for, what "done" looks like.]

## How I want you to work

- [Ask before X. For example: ask before creating a new file rather than editing
  an existing one.]
- [Show me Y before doing it. For example: show me the plan before you start
  changing things.]
- [Never Z without checking with me. For example: never send anything to anyone.]

## Words that mean something specific here

- **[Your term]**: [what it means in this project, and what it is NOT]
- **[Your term]**: [what it means in this project, and what it is NOT]

Ambiguous vocabulary is the single most common reason a capable model gives a
confidently wrong answer. If two words in your world could be confused, define
both here.

## Where things live

- [folder or file]: [what belongs there]
- [folder or file]: [what belongs there]

## How I want things written

- [Tone, format, or style rules. For example: plain language, no jargon.]
- [Formatting rules. For example: dates as YYYY-MM-DD.]

## Things that have gone wrong before

- [The mistake, and the rule that prevents it.]

Only keep entries here that have actually happened. This section is where these
files get bloated, and a bloated file is one Claude follows less reliably.

---

## Maintaining this file

Treat it like anything else you own: review it when something goes wrong, prune
it regularly, and check whether a change actually shifted the behaviour.

Two symptoms and what they usually mean:

- **A rule keeps getting broken.** The file is probably too long and that rule is
  getting lost. Cut other things.
- **Claude asks you something this file already answers.** The wording is
  probably ambiguous. Rewrite that line, do not add a second one.

If a rule must hold every single time, with no exceptions, this file is the
wrong home for it. This file is a request. A hook is enforcement.
