WissenClaude Code & Vibe Coding

Was passiert, wenn ein Claude Code Agent eine Datei löscht

Claude Code merkt sich fast jede Änderung automatisch, außer eine Datei wird über einen Befehl gelöscht statt bearbeitet. Genau diese Lücke solltest du kennen.

Tommy Hummel-Nguyen
Tommy Hummel-Nguyen · Ingenieur, kein Softwareentwickler ·

Ein Textverarbeitungsprogramm, das jede Änderung im geöffneten Dokument mitschreibt und dir erlaubt, einen Schritt zurückzugehen, aber nichts merkt, wenn die ganze Datei über den Explorer gelöscht wird. Genau diese Lücke gibt es bei Claude Code auch, nur weniger offensichtlich, weil der Agent beides selbst auslösen kann: die Bearbeitung und das Löschen.

Kurz gesagt

Löscht Claude Code eine Datei über sein eigenes Bearbeitungswerkzeug, greift der automatische Kontrollpunkt, den es zu jedem Prompt anlegt, du holst die Datei mit /rewind zurück. Löscht Claude Code dieselbe Datei aber über einen Terminalbefehl wie rm, verfolgt der Kontrollpunkt das laut offizieller Dokumentation nicht mit, die Datei ist ohne weitere Absicherung tatsächlich weg. Deshalb ersetzt /rewind kein Versionskontrollsystem, es ist ein schneller Rücksprung innerhalb der Sitzung, kein dauerhaftes Backup.

Was ein Kontrollpunkt tatsächlich mitschneidet

Claude Code legt zu jedem Prompt automatisch einen Kontrollpunkt an und verfolgt dabei die Dateiänderungen, die Claude während der Bearbeitung vornimmt. Über den Befehl /rewind, oder zweimal Esc bei leerer Eingabe, öffnet sich ein Menü mit den letzten Kontrollpunkten der aktuellen Sitzung, jeder davon verknüpft mit der Nachricht oder dem Werkzeugaufruf, der ihn ausgelöst hat. Wählst du einen aus, stellt Claude Code die betroffenen Dateien exakt auf den Stand von damals zurück. Diese Kontrollpunkte bleiben sitzungsübergreifend erhalten, werden aber automatisch nach 30 Tagen gelöscht, und pro Sitzung werden nur die 100 zuletzt erzeugten aufbewahrt.

Die Lücke, die viele nicht kennen

Genau hier liegt der entscheidende Unterschied: Dateien, die über einen Bash-Befehl verändert oder gelöscht wurden, etwa rm datei.txt, werden von diesem Mechanismus nicht erfasst. Auch manuelle Änderungen, die du selbst außerhalb von Claude Code an einer Datei vornimmst, tauchen im Kontrollpunkt nicht auf. Das bedeutet konkret: wenn Claude Code eine Datei über sein eigenes Bearbeitungswerkzeug löscht, bist du über /rewind geschützt. Löst Claude Code denselben Verlust über einen Terminalbefehl aus, etwa im Rahmen eines größeren Aufräumschritts, greift die eingebaute Absicherung nicht.

Was du sofort tust, wenn eine Datei weg ist

Zuerst ruhig prüfen, wie sie verschwunden ist. Bei einer Bearbeitung durch Claude Code direkt in der Sitzung: /rewind öffnen und den Kontrollpunkt vor der Löschung wählen. Bei einem Terminalbefehl: in einem Git-Repository hilft git status und im Zweifel git checkout auf die zuletzt committete Version, sofern die Datei schon einmal committet war. Ohne Git bleibt nur der Papierkorb des Betriebssystems, sofern der Löschbefehl darüber lief und nicht endgültig gelöscht hat, oder die Versionshistorie eines Cloud-Speichers wie OneDrive oder Dropbox, falls der Ordner dort synchronisiert wird.

Die eigentliche Absicherung

Die verlässliche Lösung ist nicht der Kontrollpunkt, sondern eine funktionierende Gewohnheit: regelmäßig committen, bevor eine größere Änderung beginnt, gerade weil ein Commit unabhängig davon existiert, wie eine spätere Löschung passiert ist. Zusätzlich helfen Permissions, die einen löschenden Befehl grundsätzlich zur Rückfrage zwingen, statt ihn automatisch durchlaufen zu lassen. Und ein Review des Diffs vor dem nächsten Commit zeigt zumindest, ob eine Datei tatsächlich fehlt, bevor der Verlust auch noch dauerhaft festgeschrieben wird.

Ich denke, das Beruhigende an Checkpoints verleitet leicht dazu, sie mit einem echten Backup zu verwechseln. Sie sind für den schnellen Rücksprung gedacht, wenn eine einzelne Antwort danebenging, nicht als Ersatz für Versionskontrolle. Wer regelmäßig committet, merkt den Unterschied zwischen beidem im Ernstfall nie, weil er ihn nie braucht.

Quellen: Checkpointing (Claude Code Docs) · Rewind file changes with checkpointing (Claude Agent SDK Docs)

Häufige Fragen

Merkt sich Claude Code wirklich jede Änderung automatisch?

Nur Änderungen, die über die eigenen Bearbeitungswerkzeuge laufen. Zu jedem Prompt legt Claude Code automatisch einen Kontrollpunkt an, über den du die betroffenen Dateien mit /rewind zurückholen kannst.

Was, wenn eine Datei über einen Terminalbefehl gelöscht wurde, etwa rm?

Genau dann greift der automatische Kontrollpunkt nicht. Dateien, die über einen Bash-Befehl verändert oder gelöscht wurden, verfolgt Claude Code nicht mit, das steht so in der offiziellen Dokumentation.

Wie lange bleiben die automatischen Kontrollpunkte erhalten?

Sie werden nach 30 Tagen automatisch gelöscht, und pro Sitzung werden nur die 100 zuletzt erzeugten Kontrollpunkte aufbewahrt. Für alles, was dauerhaft erhalten bleiben soll, braucht es einen echten Commit.

Reicht /rewind als einzige Absicherung gegen Datenverlust?

Nein. /rewind ist praktisch für den schnellen Rücksprung innerhalb einer laufenden Sitzung, ersetzt aber kein Versionskontrollsystem wie Git mit regelmäßigen Commits als eigentliche Absicherung.

Willst du das bei dir umsetzen?

In der Community zeige ich, was bei mir hält. Im Erstgespräch schauen wir uns dein Vorhaben konkret an.