Varje gång Claude Code startar läser den filen CLAUDE.md i ert projekt. Det som står där följer med in i varje session, så det är där ni skriver ner det Claude annars hade behövt fråga om eller gissa sig till. En bra CLAUDE.md är kort, konkret och handlar om er kodbas, inte om kod i allmänhet.
Var ligger filen?
Projektets CLAUDE.md ligger i roten av repot, som ./CLAUDE.md eller ./.claude/CLAUDE.md. Den checkas in i git, så hela teamet får samma instruktioner.
Det finns fler nivåer för den som behöver dem:
~/.claude/CLAUDE.mdgäller för alla dina projekt. Här lägger du personliga vanor, till exempel att du vill ha svar på svenska../CLAUDE.local.mdgäller bara dig i det här projektet. Lägg den i.gitignore.- CLAUDE.md i en undermapp läses in när Claude arbetar med filer i den mappen.
Filerna läggs ihop i stället för att ersätta varandra. Det som står närmast mappen där du startade Claude läses sist.
Låt Claude skriva första versionen
Kör kommandot /init i Claude Code. Claude går då igenom kodbasen och skriver en CLAUDE.md med de kommandon, tester och konventioner den hittar. Finns det redan en fil föreslår den förbättringar i stället för att skriva över.
Se det som ett utkast. Det värdefulla är det Claude inte kan läsa sig till i koden, och det måste ni lägga till själva.
Det här hör hemma i CLAUDE.md
- Kommandona. Hur man bygger, kör tester och kör lint, med exakt de kommandon ni använder.
- Regler som inte syns i koden. "Priser lagras i ören." "Rör aldrig filerna i
legacy/." "Nya API-anrop går viasrc/lib/api.ts." - Hur ni arbetar. Hur commit-meddelanden ska se ut, vilken gren som är huvudgren och om ändringar alltid ska gå via en PR.
- Var saker finns. En kort karta över de viktigaste mapparna, om strukturen inte är självklar.
Det här hör inte hemma där
- Allmänna råd. "Skriv ren kod" och "tänk på säkerheten" ändrar ingenting. Claude försöker redan.
- Sådant som gäller en enda uppgift. Skriv det i chatten i stället, eller gör en skill av det om det återkommer.
- Hemligheter. Lösenord och API-nycklar ska aldrig ligga i en fil som checkas in.
- Långa texter. Allt i CLAUDE.md tar plats i varje session.
Skriv alltid bra och testbar kod enligt best practice.
Varje ny funktion i src/lib/ ska ha ett test i samma mapp. Kör pnpm test innan du säger att du är klar.
Tänk på att CLAUDE.md är vägledning, inte ett lås. Claude läser den som sammanhang och följer den nästan alltid, men det finns ingen garanti. Måste något stoppas helt behövs en hook i stället.
Håll den kort
Anthropic rekommenderar att varje CLAUDE.md håller sig under 200 rader. Ju längre filen är, desto sämre följs den. Behöver ni mer kan reglerna delas upp i filer under .claude/rules/. De kan dessutom begränsas till vissa filer, så att reglerna för till exempel databasen bara läses in när Claude arbetar med databaskoden.
Kolla att den används
Skriv /context i en session och titta under Memory files för att se vilka instruktionsfiler som lästes in vid start. CLAUDE.md i undermappar och regler som gäller vissa filer läses in först när de behövs och syns inte där. Säger två regler emot varandra kan Claude välja vilken som helst av dem, så läs igenom filen då och då och rensa det som har blivit inaktuellt.
Sammanfattning
Låt /init skriva en första version, och lägg sedan till det Claude inte kan se i koden: kommandon, regler och hur ni arbetar. Håll filen kort, och uppdatera den varje gång Claude gör samma misstag två gånger.