CLAUDE.md ist die Datei, aus der Claude Code am Anfang jeder Session liest: eine einfache Markdown-Datei, in der du festhältst, wer du bist, wie dein Projekt aufgebaut ist und wie sich Claude in diesem Kontext verhalten soll. Ohne sie startet jede neue Session bei null, mit ihr kennt Claude deine Regeln, bevor du die erste Zeile tippst. Gedächtnis ist dabei ein Bild, keine Technik: CLAUDE.md lernt nichts von selbst, sondern enthält genau das, was du hineinschreibst. Das unterscheidet sie von der Memory-Funktion in claude.ai, die sich Dinge aus Chats selbst merkt.
Ich betreibe mein Business mit einer Belegschaft aus acht KI-Mitarbeitern auf Claude-Basis, jeder mit eigener CLAUDE.md als Rollenbeschreibung. Was in diese Datei gehört und was nicht, habe ich über viele solcher Dateien hinweg gelernt, meist an den Stellen, an denen eine zu lange oder zu vage Datei ignoriert wurde. Die übrigen Bausteine meines Claude-Setups sammle ich auf der Claude-Übersichtsseite.
Am meisten gelernt habe ich dabei an einer Datei, in der keine Zeile Code steht: der CLAUDE.md meines Büro-Pakets Frieda, das Posteingang, Termine und Belege übernimmt. Sie steht weiter unten vollständig im Beitrag.
Was die CLAUDE.md ist, und was sie nicht ist
CLAUDE.md ist Kontext, keine erzwungene Regel. Claude liest die Datei bei jeder Session und berücksichtigt sie beim Antworten, genau wie jede andere Information im Kontextfenster. Ein Satz wie „Lösche nie Dateien im Ordner Rechnungen" ist damit eine starke Anweisung, aber keine technische Sperre. Wer ein hartes Verbot braucht, muss es zusätzlich als Hook oder in permissions.deny hinterlegen, laut Anthropic-Doku zu Memory (code.claude.com/docs/en/memory).
Das ist der Unterschied zu klassischen Chat-Tools, die jede Session bei null anfangen lassen und dich zwingen, Kontext immer wieder neu einzutippen. Warum genau dieses Vergessen zur Grundmechanik jedes Sprachmodells gehört, nicht zur Schwäche eines einzelnen Anbieters, habe ich in Warum ChatGPT vergisst, KI-Mitarbeiter nicht auseinandergenommen. CLAUDE.md ist eine von mehreren Antworten auf genau dieses Problem, für den Terminal-Arbeitsplatz Claude Code.
Die vier Ebenen: wo CLAUDE.md liegt
Laut der Anthropic-Doku zu Memory (code.claude.com/docs/en/memory) gibt es vier Ebenen, die zusammengefügt werden, nicht sich gegenseitig überschreiben. Eine unternehmensweite Managed Policy kommt zuerst, danach deine persönlichen Vorlieben, danach das Projekt, danach deine lokalen Notizen.
| Ebene |
Pfad |
Wofür |
| Managed Policy |
von der Organisation vorgegeben |
unternehmensweite Vorgaben |
| User |
~/.claude/CLAUDE.md |
deine persönlichen Regeln, projektübergreifend |
| Projekt |
./CLAUDE.md oder ./.claude/CLAUDE.md |
Rolle, Regeln und Wissen für genau dieses Projekt |
| Lokal |
./CLAUDE.local.md |
deine eigenen Notizen, per Gitignore nicht geteilt |
Für einen einzelnen KI-Mitarbeiter reicht in der Regel die Projekt-Ebene. Zusätzliche, modulare Regeln kannst du in .claude/rules/*.md auslagern, optional mit einem paths:-Frontmatter, das die Regel nur für bestimmte Ordner gelten lässt. Mit @pfad kannst du außerdem weitere Dateien in die CLAUDE.md importieren, statt alles in eine einzige Datei zu schreiben.
/init, /memory und /context im Alltag
Drei Befehle reichen für den täglichen Umgang mit CLAUDE.md. /init erzeugt in einem neuen Projekt eine erste Start-Datei, die Claude aus dem Projektordner ableitet. /memory öffnet die geladenen CLAUDE.md-Dateien direkt zum Bearbeiten, du musst also nicht erst den passenden Pfad suchen. /context zeigt dir, was aktuell tatsächlich geladen ist, hilfreich, wenn eine Regel nicht zu greifen scheint und du prüfen willst, ob die Datei überhaupt gelesen wurde.
Getrennt davon gibt es Auto Memory, das Claude Code unter ~/.claude/projects/<project>/memory/ automatisch aus Sessions ablegt. CLAUDE.md schreibst du selbst und bewusst, Auto Memory sammelt sich im Hintergrund. Die Abgrenzung zur Memory-Funktion in claude.ai, die sich Dinge aus deinen Chats merkt, erkläre ich ausführlicher in Claude Gedächtnis: aktivieren und nutzen.
Eine CLAUDE.md als Personalakte: Beispiel Frieda
Die meisten Beispiele im Netz zeigen CLAUDE.md als Tech-Stack-Notiz: welches Framework, welche Konventionen, welcher Linter. Für einen KI-Mitarbeiter, der nicht programmiert, sondern zum Beispiel den Posteingang sortiert, braucht die Datei einen anderen Aufbau: Sie beschreibt eine Rolle, nicht eine Codebasis.
So sieht das bei Frieda aus, meinem Büro-Paket für Posteingang, Termine und Belege, gekürzt und ohne echte Kundendaten:
# Frieda: Büro-Assistenz
## Aufgabe
Du sortierst den Posteingang, schlägst Termine vor und bereitest Belege für
die Buchhaltung auf. Du bist die erste Station für alles, was per Mail oder
Post ankommt, und sorgt dafür, dass nichts liegen bleibt.
## Regeln
- Rechnungen legst du in `belege/eingang/<jahr>/<monat>/` ab, benannt nach
Datum und Absender.
- Terminanfragen schlägst du mit zwei Alternativen vor, nie mit nur einer.
- Unklare Anliegen fasst du in maximal drei Sätzen zusammen, statt die
komplette Mail weiterzuleiten.
- Deine Sprache ist knapp und freundlich, keine Floskeln wie „Ich hoffe,
diese Mail erreicht dich gut".
## Grenzen
- Du beantwortest keine Mails eigenständig, du bereitest Entwürfe vor.
- Du triffst keine Zusagen zu Preisen oder Terminen ohne Freigabe.
- Bei Rechnungen über 500 Euro fragst du vor der Ablage nach, ob sie korrekt
ist.
## Dateien
- `posteingang/` für neue, unbearbeitete Nachrichten
- `belege/eingang/` für geprüfte Rechnungen und Quittungen
- `kontakte.md` für wiederkehrende Absender und wie mit ihnen umzugehen ist
## Freigaben
Alles, was das Büro nach außen verlässt, etwa eine Antwortmail oder eine
Terminbestätigung, legst du als Entwurf an und wartest auf Freigabe. Interne
Sortierung und Ablage erledigst du selbstständig.
Fünf Blöcke, jeder mit einem klaren Zweck: Was ist der Job, was sind die Regeln dabei, wo sind die Grenzen, welche Dateien gehören dazu, und was braucht eine Freigabe, bevor es das Haus verlässt. Genau dieses Muster, Rolle statt Themenordner, trage ich auch in Claude-Projekte, wo dieselbe Logik ohne Terminal funktioniert: Claude Projekte richtig nutzen.
Was in die CLAUDE.md gehört, und was in Skills oder Rules
CLAUDE.md trägt die Rolle: wer arbeitet hier, mit welchen Regeln, welchen Grenzen. Ein wiederkehrender Arbeitsschritt, etwa „so erstelle ich ein Angebot" mit festen Schritten, gehört dagegen in einen Skill, der erst bei Bedarf geladen wird und die CLAUDE.md schlank hält. Regeln, die nur für einen bestimmten Unterordner gelten, etwa nur für belege/, gehören in eine .claude/rules/*.md mit passendem paths:-Frontmatter statt in die Haupt-Datei.
Harte Verbote gehören in keine der beiden: Wenn etwas unter keinen Umständen passieren darf, zum Beispiel ein Löschbefehl auf einem bestimmten Ordner, ist das eine Aufgabe für Hooks oder permissions.deny, nicht für einen Satz in der CLAUDE.md. Die Datei bleibt damit für das zuständig, wofür sie gemacht ist: Kontext, keine Firewall.
Unter 200 Zeilen bleiben
Die Anthropic-Doku empfiehlt, CLAUDE.md unter etwa 200 Zeilen zu halten. Der Grund ist nicht Ästhetik: Jede Zeile in der Datei belegt Platz im Kontextfenster jeder einzelnen Session, auch wenn sie gerade nicht gebraucht wird. Eine zu lange Datei liest sich niemand mehr komplett durch, und je mehr Regeln nebeneinander stehen, desto weniger verlässlich greift bei mir die einzelne.
Konkret zu sein hilft mehr als lang zu sein. „Formuliere professionell" ist eine schwache Regel, weil sie Interpretationsspielraum lässt. „Rechnungen über 500 Euro brauchen eine Rückfrage vor der Ablage" ist eine konkrete Regel, weil Claude sie ohne Nachdenken befolgen kann. Wenn deine CLAUDE.md wächst, ist das meist ein Zeichen, Teile in Skills oder Rules auszulagern, statt weiter in derselben Datei zu sammeln.
Häufige Fragen
Wo genau liegt meine CLAUDE.md?
Für ein einzelnes Projekt meist unter ./CLAUDE.md oder ./.claude/CLAUDE.md im Projektordner. Für Regeln, die für alle deine Projekte gelten sollen, kommt zusätzlich ~/.claude/CLAUDE.md dazu. Mit /memory öffnest du die aktuell geladenen Dateien direkt, ohne den Pfad zu suchen.
Liest Cowork meine CLAUDE.md auch?
Laut Anthropic-Doku zu Memory (code.claude.com/docs/en/memory) lesen Cowork-Sitzungen die CLAUDE.md, überspringen dabei aber Imports, die außerhalb des Arbeitsordners liegen. Für den Kern deiner Rolle reicht das, für ausgelagerte Zusatzdateien per @pfad solltest du das im Einzelfall prüfen.
Wie lang darf eine CLAUDE.md sein?
Die Doku empfiehlt, unter etwa 200 Zeilen zu bleiben. Es gibt keine harte technische Grenze, aber je länger die Datei, desto mehr Kontextfenster verbraucht sie in jeder Session und desto eher verwässern sich einzelne Regeln gegenseitig.
Was ist der Unterschied zu Auto Memory?
CLAUDE.md schreibst du selbst und bewusst, sie beschreibt eine Rolle. Auto Memory sammelt Claude Code automatisch aus deinen Sessions unter ~/.claude/projects/<project>/memory/, ohne dass du es aktiv pflegst. Beide ergänzen sich, ersetzen sich aber nicht.
Warum ignoriert Claude meine Regel in der CLAUDE.md?
Meist, weil die Regel zu vage formuliert ist oder weil die Datei so lang geworden ist, dass einzelne Sätze im Kontext untergehen. Prüfe mit /context, ob die Datei überhaupt geladen wird, und mach die betroffene Regel konkreter. Für ein wirklich hartes Verbot brauchst du zusätzlich einen Hook oder einen Eintrag in permissions.deny.
Wie du deine erste CLAUDE.md schreibst
Starte nicht mit einer Wunschliste, sondern mit /init in einem echten Projekt, lass Claude einen ersten Entwurf ableiten, und ergänze danach die fünf Blöcke aus dem Frieda-Beispiel: Aufgabe, Regeln, Grenzen, Dateien, Freigaben. Prüfe nach den ersten Sessions mit /context, was tatsächlich ankommt, und kürze eher, als weiter anzuhängen.
Wie so eine Rolle vom ersten Onboarding-Gespräch bis zur laufenden Arbeit entsteht, zeige ich in Claude Code: Anleitung für Einsteiger. Die acht fertigen Pakete, jedes mit eigener CLAUDE.md, gibt es in meiner Community.