Was CLAUDE.md an Tokens kostet und wie lang es sein sollte
Claude Code liest Ihre CLAUDE.md vor dem ersten Prompt und sendet sie bei jeder weiteren Anfrage erneut. Caching senkt die Kosten, beseitigt sie aber nicht. Jede Zeile muss ihren Platz verdienen.
Ein CLAUDE.md ist eine Markdown-Datei mit ständigen Anweisungen, die Claude Code beim Start einer Sitzung in das Kontextfenster lädt. Es ist nicht Teil der System-Prompt: Claude Code übermittelt es als Benutzernachricht, die direkt danach platziert wird, und Claude behandelt es als Anleitung und nicht als erzwungene Konfiguration.
Das Modell speichert nichts zwischen Anfragen, daher sendet Claude Code bei jedem Aufruf den gesamten Kontext erneut: System-Prompt, Projektkontext, jede frühere Nachricht und Toolergebnis. Bei jeder Tool-Nutzungsrunde handelt es sich um einen neuen Aufruf. Eine Eingabeaufforderung, die Claude dazu bringt, fünf Dateien zu lesen und die Tests auszuführen, besteht also aus mehreren Anfragen, von denen jede Ihren vollständigen CLAUDE.md enthält.
Kurz gesagt: Jede Zeile wird bei jeder Anfrage bezahlt, mit einem Rabatt, solange der Cache hält, und über dem normalen Eingabepreis, jedes Mal, wenn der Cache neu erstellt wird. Halten Sie die Datei kurz und verschieben Sie das, was nicht jedes Mal benötigt wird, in Dateien, die bei Bedarf geladen werden.
Welche Dateien werden wann geladen?
Claude Code verkettet jede gefundene Speicherdatei, anstatt sie durch eine andere ersetzen zu lassen. Mit Stand September 2026 sind in der Claude-Code-Dokumentation folgende Quellen aufgeführt:
- Verwaltete Richtlinie: ein organisationsweiter
CLAUDE.md, der von der IT bereitgestellt wird, wie z. B./etc/claude-code/CLAUDE.mdunter Linux. Es kann nicht ausgeschlossen werden. - Benutzer:
~/.claude/CLAUDE.mdund die Regeln in~/.claude/rules/, angewendet auf jedes Projekt auf Ihrem Computer. - Projekt:
./CLAUDE.mdoder./.claude/CLAUDE.mdsowie jede.claude/rules/-Datei ohnepaths-Feld, gemeinsam genutzt durch Versionskontrolle. - Lokal:
./CLAUDE.local.md, Ihre eigenen Notizen für ein Projekt, hinzugefügt zu.gitignore. - Automatischer Speicher: die ersten 200 Zeilen oder 25 KB des
MEMORY.md-Index, den Claude für das Repository behält. Die Themendateien, auf die es verweist, werden nur bei Bedarf gelesen.
Dateien im Arbeitsverzeichnis und den darüber liegenden Verzeichnissen werden beim Start geladen. Der CLAUDE.md eines Unterverzeichnisses wird nur geladen, wenn Claude eine Datei in diesem Verzeichnis liest, und eine Regel mit paths nur, wenn Claude eine Datei liest, die sie abdeckt. Importe sind die Falle: Eine @path/to/file-Zeile zieht diese Datei beim Start ein, bis zu vier Hops tief, sodass die Aufteilung einer langen Datei in Importe sie aufräumt, ohne einen einzigen Token zu speichern.
Warum Caching es nicht kostenlos macht
Beim Prompt-Caching vergleicht die API den Beginn jeder Anfrage mit dem, was sie kürzlich verarbeitet hat, und stellt den identischen Teil zu einem reduzierten Preis in Rechnung. Claude Code ordnet jede Anfrage so, dass das, was sich selten ändert, zuerst kommt: dem System-Prompt und die Tooldefinitionen, dann der Projektkontext (Ihre Speicherdateien) und dann die Konversation. In einem normalen Zug ist Ihr CLAUDE.md ein Cache-Lesevorgang.
Bei den von Anthropic veröffentlichten API-Preisen (September 2026) kostet ein Cache-Lesevorgang bei den meisten Claude-Modellen ein Zehntel des Basis-Input-Preises und bei einigen der neuesten weniger. Ein Cache-Schreibvorgang kostet bei einer Lebensdauer von fünf Minuten das 1,25-fache des Grundpreises, bei einer Lebensdauer von einer Stunde das Zweifache. Immer wenn das Präfix erneut geschrieben werden muss, wird Ihr CLAUDE.md über dem Preis der einfachen Eingabe abgerechnet. Das kommt öfter vor, als es aussieht:
- Nach einer Pause, die länger als die Cache-Lebensdauer ist: eine Stunde für die Hauptkonversation bei einem Claude-Abonnement im Rahmen der enthaltenen Nutzung, standardmäßig fünf Minuten mit einem API-Schlüssel.
- Wenn Sie das Modell wechseln (jedes Modell hat seinen eigenen Cache) oder, bei den meisten Modellen, die Aufwandsstufe ändern.
- Wenn sich die davor liegenden Tool-Definitionen ändern, beispielsweise ein MCP-Server, dessen Tools im Voraus geladen werden und sich mitten in der Sitzung verbinden.
- In jedem Subagenten außer dem integrierten Explore und Plan: Jeder lädt Ihre
CLAUDE.md-Dateien in seinen eigenen Kontext und erstellt seinen eigenen Cache, mit einer standardmäßigen Lebensdauer von fünf Minuten, selbst bei einem Abonnement. - In jedem Arbeitsbaum oder Verzeichnis, von dem aus Sie eine Sitzung starten, da der Cache effektiv auf ein Verzeichnis beschränkt ist.
Durch Caching ändert sich der Preis, nicht die Größe. Die Datei belegt bei jeder Anfrage das Fenster, wodurch weniger Raum für die Konversation vor der automatischen Komprimierung bleibt, und längere Dateien verringern die Einhaltung, da jede Regel weniger Aufmerksamkeit erhält. Bei einem Abonnement gibt es keine Rechnung, aber derselbe Kontext bezieht sich auf die Nutzungsbeschränkungen Ihres Plans.
So messen Sie die Kosten Ihrer Datei
Öffnen Sie eine neue Sitzung und sehen Sie sich, bevor Sie etwas eingeben, an, was bereits im Fenster angezeigt wird:
/contextUnterteilt das Fenster nach Kategorien. In der Liste der Speicherdateien werden alle CLAUDE.md-, Regel- und automatischen Speicherdateien angezeigt, die geladen wurden.
/memory listet Ihre Speicherdateien auf und öffnet sie in Ihrem Editor. Ab Claude Code v2.1.251 fügt /usage eine Prompt cache (main)-Zeile mit dem Anteil der aus dem Cache bereitgestellten Eingaben und der Anzahl der Fehler hinzu; Eine steigende Anzahl von Fehlern bedeutet, dass das Präfix, einschließlich der Speicherdateien, immer wieder neu geschrieben wird.
Was hineingehört
Anthropics Test für jede Zeile: Würde das Entfernen dazu führen, dass Claude Fehler macht? Wenn nicht, schneiden Sie es ab. Was überlebt, ist meist kurz:
- Build-, Test- und Lint-Befehle, die Claude nicht erraten kann.
- Codestilregeln, die von den Standardeinstellungen abweichen, nicht diejenigen, die Ihr Formatierer bereits erzwingt.
- Repository-Etikette: Branch-Namen, Commit- und Pull-Request-Konventionen.
- Projektspezifische Architekturentscheidungen.
- Besonderheiten der Umgebung, etwa eine erforderliche Variable oder ein Dienst, der ausgeführt werden muss.
- Fallstricke: das nicht offensichtliche Verhalten, das jemanden bereits einen Nachmittag gekostet hat.
Schreiben Sie jede Regel so, dass sie überprüft werden kann: „Run npm test before commit“ funktioniert, „Testen Sie Ihre Änderungen“ nicht. Das Ziel der Dokumentation liegt bei unter 200 Zeilen pro Datei.
Was Sie auslagern sollten
Meistens ist ein aufgeblähter CLAUDE.md nicht falsch, er befindet sich am falschen Ort. Für jede Art von Inhalt gibt es ein günstigeres Zuhause:
- Was Claude aus dem Code lesen kann (Verzeichnislayouts, Abhängigkeitslisten, Datei-für-Datei-Beschreibungen): Löschen Sie ihn.
- Langes Referenzmaterial, wie eine API-Referenz oder ein Styleguide: Bewahren Sie es in einer eigenen Datei auf und geben Sie den Pfad ohne
@an. Claude öffnet es dann nur, wenn eine Aufgabe es erfordert. - Mehrstufige Verfahren, wie z. B. eine Release-Checkliste: Machen Sie sie zu Skills. Zu Beginn der Sitzung wird nur die Kurzbeschreibung eines Skills geladen. Der Rest wird geladen, wenn es verwendet wird.
- Regeln für einen Teil der Codebasis: eine
.claude/rules/-Datei mit einempaths-Muster oder eineCLAUDE.mdin diesem Unterverzeichnis. Beide werden nur geladen, wenn Claude eine Datei liest, auf die sie sich beziehen. - Alles, was jedes Mal passieren muss, z. B. die Formatierung nach einer Bearbeitung: ein Hook. Ein Hook kostet keinen Kontext, es sei denn, er gibt eine Ausgabe zurück, und im Gegensatz zu einer Anweisung wird er erzwungen.
So kürzen Sie die Datei
Beginnen Sie mit dem Checkup, der im Lieferumfang von Claude Code enthalten ist. Ab v2.1.206 schlägt /doctor Kürzungen für einen eingecheckten CLAUDE.md vor: Es entfernt Inhalte, die Claude aus der Codebasis ableiten kann, behält Fallstricke, Begründungen und Konventionen bei, die von den Tool-Standards abweichen, und verschiebt die immer geladene Anleitung, die verbleibt, in Skills und verschachtelte Dateien, die bei Bedarf geladen werden.
/doctorMeldet zuerst seine Ergebnisse und fragt nach, bevor eine Datei geändert wird.
Dann ein paar Durchgänge von Hand:
- Löschen Sie jede Regel, die Claude ohne Aufforderung befolgt: Entfernen Sie die Zeile und prüfen Sie, ob sich das Verhalten ändert.
- Verwandeln Sie Notizen für Betreuer in HTML-Kommentare auf Blockebene. Claude Code entfernt
<!-- ... -->-Blöcke, bevor der Inhalt das Modell erreicht. - Widersprüche auflösen. Zwei Regeln, die nicht übereinstimmen, werden doppelt bezahlt, und Claude kann sich an eine der beiden Regeln halten.
- Überspringen Sie in einem Monorepo die Dateien anderer Teams mit der Einstellung
claudeMdExcludes. - Geben Sie benutzerdefinierten Subagenten, die nichts davon benötigen,
omitClaudeMd: truein ihrer Definition an (v2.1.271 oder höher).
AGENTS.md und Codex CLI
Codex CLI liest stattdessen AGENTS.md. Laut seiner Dokumentation (September 2026) baut es einmal pro Lauf, normalerweise einmal pro Sitzung, eine Anweisungskette in der interaktiven Schnittstelle auf:
- Global: in
~/.codexoderCODEX_HOME, falls festgelegt,AGENTS.override.md, falls vorhanden, andernfallsAGENTS.md. - Projekt: vom Projektstammverzeichnis, normalerweise dem Git-Stammverzeichnis, bis zu dem Verzeichnis, von dem aus Sie gestartet haben, höchstens eine Datei pro Verzeichnis:
AGENTS.override.md, dannAGENTS.md, dann jeder inproject_doc_fallback_filenamesaufgeführte Name. - Es verbindet sie vom Stammverzeichnis abwärts, überspringt leere Dateien und stoppt das Hinzufügen von Text, sobald die kombinierte Größe
project_doc_max_byteserreicht, standardmäßig 32 KiB.
Das Ergebnis geht in die erste Runde der Sitzung, sodass es bei jeder späteren Anfrage übertragen wird. Zu den eigenen Tipps von Codex, um Nutzungsbeschränkungen dauerhaft festzulegen, gehören das Verkleinern von AGENTS.md und das Verschachteln von Dateien in den von ihnen verwalteten Verzeichnissen. Ab September 2026 speicherten die Kreditkartenabrechnungen die Eingaben bei einem Zehntel der neuen Eingaben im Cache, ohne separate Cache-Schreibgebühr. So sehen Sie die Anweisungen, sobald sie vom Modell empfangen werden:
codex debug prompt-inputDruckt die für das Modell sichtbare Eingabe als JSON, anstatt sie zu senden, einschließlich der Anweisungsdateien.
Eine Datei kann beide Agenten bedienen. Ab v2.1.277 liest Claude Code AGENTS.md als Projektanweisungen, wenn im Arbeitsverzeichnis oder darüber kein CLAUDE.md oder CLAUDE.local.md vorhanden ist; Andernfalls geben Sie @AGENTS.md oben in Ihren CLAUDE.md ein. Claude Code liest AGENTS.override.md nicht.
Die Fixkosten und die variablen Kosten
Durch das Trimmen der Anweisungsdatei wird der feste Teil der Rechnung verkleinert. Der Rest ist das, was jede Aufgabe darüber liest: Dateien, Befehlsausgabe, Verlauf. Wenn Sie die Datei benennen, die Sie meinen, und eine neue Sitzung pro Aufgabe starten, halten Sie diesen Teil niedrig.
Für eine feste Obergrenze steuert capsul den Claude Code oder die Codex-CLI, bei der Sie bereits angemeldet sind, sendet, was die Aufgabe im Rahmen eines von Ihnen festgelegten Token-Budgets verlangt, und teilt Ihnen mit, was ausgelassen wurde. Die gemessenen Ergebnisse finden Sie auf der Benchmark-Seite.
Fragen
Wie lang sollte ein CLAUDE.md sein?
In der Claude-Code-Dokumentation von Anthropic werden weniger als 200 Zeilen pro Datei empfohlen (Stand September 2026), da längere Dateien mehr Kontext beanspruchen und die Zuverlässigkeit verringern, die Claude ihnen folgt. Es gibt keine feste Zeilenbegrenzung: Claude Code lädt eine Datei mit bis zu 4 MiB vollständig und überspringt eine größere. Der praktische Test besteht darin, ob das Entfernen einer Zeile dazu führen würde, dass Claude Fehler macht. Wenn nicht, schneiden Sie es ab.
Wird CLAUDE.md auf meine Claude-Nutzungsbeschränkungen angerechnet?
Ja. Es ist Teil der Eingabe jeder Anfrage in einer Sitzung und stützt sich daher wie der Rest des Kontexts auf die Nutzungsbeschränkungen eines Abonnements oder auf eine API-Rechnung. Schnelles Caching macht jeden Lesevorgang billiger, während der Cache warm ist, aber jedes Mal, wenn der Cache neu erstellt wird, wird die Datei erneut in den Cache geschrieben, was auf der API mehr kostet als eine einfache Eingabe.
Reduzieren @imports in CLAUDE.md die Token-Nutzung?
Nein. Importierte Dateien werden beim Start erweitert und zusammen mit der CLAUDE.md, die auf sie verweist, bis zu vier Hops tief geladen, sodass sie genauso viel kosten wie das Einfügen des Textes. Um ein Dokument aus dem Kontext zu halten, bis eine Aufgabe es benötigt, geben Sie seinen Pfad ohne das @ an oder verschieben Sie es in einen Skill oder eine pfadbezogene Regel.
Liest Codex CLI CLAUDE.md und liest Claude Code AGENTS.md?
Codex liest AGENTS.md oder AGENTS.override.md, von ~/.codex und vom Projektstamm bis hinunter zu Ihrem aktuellen Verzeichnis und liest andere Namen nur, wenn Sie sie in project_doc_fallback_filenames auflisten. Claude Code v2.1.277 und höher liest AGENTS.md, wenn in Ihrem Arbeitsverzeichnis oder darüber kein CLAUDE.md oder CLAUDE.local.md vorhanden ist, und andernfalls durch einen @AGENTS.md-Import in Ihrem CLAUDE.md. Ein kurzer AGENTS.md kann daher beide Agenten bedienen.
Gelten Änderungen an CLAUDE.md für die aktuelle Sitzung?
Nicht für die Projekt- und Benutzerdateien. Claude Code liest sie einmal beim Sitzungsstart und behält diese Version bei, sodass eine Bearbeitung nach /clear, /compact oder einem Neustart wirksam wird und der Cache in der Zwischenzeit nicht beschädigt wird. Eine verschachtelte CLAUDE.md oder eine pfadbezogene Regel, die noch nicht geladen wurde, übernimmt die Bearbeitung, wenn Claude zum ersten Mal eine Datei liest, auf die sie angewendet wird.
$ npm i -g @penra/capsul