1. Wie Claude Code die Codebasis erkundet und liest
Im Gegensatz zu üblichen KI-Chats im Browser, bei denen Entwickler den Quellcode manuell in das Dialogfenster kopieren müssen, ist Claude Code ein vollwertiger Terminal-Agent. Er hat direkten Zugriff auf das lokale Dateisystem Ihres Projekts und wählt eigenständig spezialisierte Tools zur Navigation durch die Codebasis aus.
Der Agent lädt nicht das gesamte Projekt gleichzeitig in den Speicher (was sofort zum Verbrauch des Token-Limits führen würde), sondern wendet eine gezielte Strategie des schrittweisen Lesens an.
Der grundlegende Werkzeugkasten für die Exploration
Übersicht der Navigationswerkzeuge von Claude Code| Tool | Funktion | Typisches Anwendungsszenario |
|---|---|---|
Read | Öffnet und liest eine bestimmte Datei anhand des angegebenen Pfads | Read src/auth/login.ts, um die Logik einer Komponente zu untersuchen |
Glob | Findet Dateien und Pfade anhand von Masken oder Erweiterungen | Suche nach allen Konfigurationsdateien **/*.config.{js,ts} oder Tests *.test.ts |
Grep | Führt eine Volltextsuche nach Zeichenketten oder regulären Ausdrücken durch | Suche nach Aufrufstellen einer Funktion oder TODO-Kommentaren im gesamten Code |
Bash(ls) | Untersucht die Verzeichnisstruktur und vorhandene Module | Erkundung der Struktur des Ordners src/components/ |
Sie müssen diese Utilities nicht manuell aufrufen. Es genügt, eine ingenieurtechnische Frage in natürlicher Sprache zu formulieren, und Claude Code startet selbstständig die optimale Kette von Tools.
2. Schnelles Onboarding in ein unbekanntes Projekt
Wenn Sie ein großes Repository zum ersten Mal öffnen, ist es ineffizient, Stunden damit zu verbringen, hunderte Dateien manuell zu lesen. Claude Code ermöglicht es Ihnen, innerhalb von Sekunden ein umfassendes architektonisches Bild zu erhalten.
Formulierung der initialen Architekturabfrage
Navigieren Sie in das Stammverzeichnis des Repositories, starten Sie claude und beginnen Sie mit einer breiten diagnostischen Prompt-Anweisung:
Was der Agent während des Scans tut
- Lesen der Abhängigkeits-Manifeste: Analysiert
package.json,Cargo.toml,go.mododerrequirements.txt, um die wichtigsten Bibliotheken und Frameworks zu identifizieren. - Prüfung der Dokumentation: Öffnet
README.md,ARCHITECTURE.mdoder Spezifikationsdateien. - Analyse der Ordnerstruktur: Bewertet die Aufgabenteilung zwischen den Verzeichnissen (
src/api,src/components,src/services,prisma). - Erstellung einer Zusammenfassung: Gibt einen strukturierten Bericht zurück, der die Schlüsselmodule, Einstiegspunkte und Startanweisungen auflistet.
Die Erläuterungen von Claude basieren auf dem aktuellen Code auf der Festplatte, nicht auf veralteter Dokumentation, die oft jahrelang nicht aktualisiert wird.
3. Gezielte Exploration: Nachverfolgung von Datenflüssen und Requests
Nachdem Sie das Gesamtbild verstanden haben, ist es Zeit, spezifische Geschäftsszenarien zu untersuchen. Der größte Vorteil von Claude Code gegenüber herkömmlichen Modellen ist die Fähigkeit, die vollständige Call Trace über verschiedene Ebenen der Anwendung hinweg nachzuverfolgen.
Wie Claude Interaktionsketten nachverfolgt
Wenn Sie eine Aufgabe im Format „Trace the flow“ stellen, führt der Agent folgende Schritte aus:
- Findet den UI-Komponenten des Formulars über
Grep. - Findet die Klick-Handler-Funktion und bestimmt den entsprechenden API-Endpoint.
- Öffnet den Backend-Router und analysiert die angewendeten Middleware-Schichten.
- Untersucht ORM-/Datenbankaufrufe und gibt ein kohärentes, schrittweises Schema mit Zeilennummern zurück.
4. Tiefensuche nach Mustern und Refactoring von Imports
Dank der integrierten Tools Grep und Glob führt der Agent präzise Suchen nach der Verwendung von Funktionen, Typen oder Dateien anhand von Mustern durch und erspart Ihnen so rohe Terminal-Ausgaben.
Beispiele für präzise Suchanfragen
Claude verarbeitet die Ergebnisse, gruppiert sie nach Kategorien und erklärt den Kontext jedes gefundenen Vorkommens, anstatt nur eine unzusammenhängende Liste von Zeilen auszugeben.
5. Analyse und Dekonstruktion komplexer Codeabschnitte
Wenn Sie auf verworrenen Legacy-Code, unverständliche reguläre Ausdrücke oder komplexe Datenverarbeitungspipelines stoßen, wenden Sie sich an Claude für eine detaillierte Analyse.
Anfragen zur Code-Dekonstruktion
Der Agent paraphrasiert den Code nicht einfach, sondern analysiert Edge Cases, potenzielle Memory Leaks und Synchronisationsprobleme.
6. Durchführung von Code Reviews und Git Diff-Analyse
Claude Code eignet sich hervorragend für lokale Audits von Änderungen vor dem Commit oder dem Eröffnen eines Pull Requests.
Review-Workflow
Interaktives Review innerhalb der Session
Wenn Sie sich bereits im interaktiven Modus von Claude befinden, geben Sie einfach ein:
Claude analysiert die Ausgabe von git diff, weist auf potenzielle Zuverlässigkeitsprobleme hin und schlägt konkrete Korrekturen vor, bevor Ihre Kollegen den Code sehen.
7. Modifikations-Tools: Edit, Write und Bash
Das Verständnis, wie Claude Code das Dateisystem modifiziert, ist der Schlüssel zur Kontrolle über die Sicherheit der Codebasis. Für Änderungen nutzt der Agent die Trias der Tools: Edit, Write und Bash.
Das Tool Edit: Präzise chirurgische Änderungen
Edit führt eine punktuelle Ersetzung von Textfragmenten durch. Es findet einen eindeutigen Block von Zeilen in einer Datei und ersetzt ihn durch eine aktualisierte Version, wobei der Rest der Datei unberührt bleibt.
Sie sehen immer einen farbigen Diff im Terminal, bevor Sie die Anwendung der Änderung bestätigen.
Das Tool Write: Erstellung neuer Module
Write wird verwendet, um neue Dateien von Grund auf zu generieren oder Konfigurationsdateien vollständig zu aktualisieren:
Das Tool Bash: Systemoperationen und Verifikation
Bash ermöglicht dem Agenten die Interaktion mit dem Betriebssystem: Installation von Paketen, Ausführung von Migrationen, Build des Projekts und Starten von Tests.
8. End-to-End-Änderungen über mehrere Dateien hinweg
Der Hauptvorteil eines vollwertigen agentic Ansatzes gegenüber normalen Chats ist die Fähigkeit, konsistente End-to-End-Refactorings durchzuführen, die verschiedene Architekturschichten betreffen.
Wie Claude die Konsistenz der Änderungen sicherstellt
- Aktualisierung des Datenschemas: Bearbeitet
schema.prismaüberEdit. - Ausführung der Migration: Ruft
npx prisma migrate devüberBashauf. - Aktualisierung der Backend-Validierung: Fügt Feldvalidierung in die Zod-Schema des Routers
src/app/api/user/route.tsein. - Aktualisierung der UI-Oberfläche: Fügt ein Eingabefeld in die Datei
src/components/ProfileForm.tsxein. - Kompilierungsvalidierung: Startet
npm run typecheck, um die Abwesenheit von Typkonflikten zu bestätigen.
Jede Aktion erfordert Ihre Bestätigung und gewährleistet so volle Transparenz des Prozesses.
9. Iterative Verfeinerung und sicheres Rückgängigmachen von Änderungen
Die Entwicklung mit Claude Code ist ein interaktiver Dialog. Wenn eine generierte Änderung Anpassungen erfordert, müssen Sie den gesamten Kontext nicht wiederholen.
Präzisierung von Änderungen im Kontext der aktuellen Session
Mechanismen zum Rückgängigmachen unerwünschter Änderungen
Wenn eine Änderung genehmigt wurde, das Ergebnis aber nicht Ihren Erwartungen entspricht, gibt es zwei zuverlässige Wege, alles rückgängig zu machen:
-
Über Claude:
textUndo the last changes you made to src/lib/validation.ts and return the file to its previous state. -
Direkt über Git im Terminal:
bash# Скасувати зміни в конкретному файлі git checkout -- src/lib/validation.ts # Скасувати всі незафіксовані зміни в проєкті git reset --hard HEAD
Machen Sie einen sauberen Commit, bevor Sie mit einem umfangreichen Refactoring mit Claude Code beginnen. Dies ermöglicht es Ihnen, jederzeit mit einem einzigen Befehl git checkout zum funktionierenden Zustand zurückzukehren.
10. Ingenieurtechnische Best Practices und abschließende Checkliste
Die Einhaltung bewährter ingenieurtechnischer Praktiken verwandelt Claude Code in einen extrem zuverlässigen Pair-Programming-Partner.
Vier Regeln für produktive Interaktion
- Eine Aufgabe – eine Anfrage: Mischen Sie keine verschiedenen Features in einem Prompt („Füge Authentifizierung hinzu, schreibe die Header-Stile neu und lösche alte Tests“). Zerlegen Sie die Arbeit in atomare Schritte.
- Verifikation durch Compiler und Tests: Bitten Sie den Assistenten nach Abschluss jeder Serie von Änderungen, das Ergebnis zu überprüfen:
Run npm test and npm run typecheck to make sure everything compiles cleanly. - Verständnis der Tool-Mechanik: Denken Sie daran, dass punktuelle Änderungen über
Edit, neue Dateien überWriteund Prüfungen überBashlaufen. Dies hilft Ihnen, präzisere Anweisungen zu geben. - Kontexthygiene: Wenn eine Aufgabe erledigt ist und Sie zu einem grundsätzlich anderen Thema wechseln, nutzen Sie den Befehl
/compactoder starten Sie die Session neu, um den Speicher von unnötigen Logs zu bereinigen.
Schneller Selbsttest
1. Welches Tool verwendet Claude Code für die punktuelle Ersetzung von Codefragmenten ohne vollständiges Überschreiben der Datei?
Antwort: Das Tool
Edit. Es findet ein eindeutiges Codefragment und führt die Ersetzung durch, wobei es eine differenzielle Ansicht (Diff) anzeigt.
2. Warum lädt Claude Code beim Start nicht alle Projektdateien sofort in den Speicher?
Antwort: Um die Limits des Kontextfensters nicht zu überschreiten und keine unnötigen Tokens zu verbrauchen. Stattdessen nutzt es gezielte Navigation über
Glob,GrepundRead.
3. Wie können Sie schnell die Unterschiede des aktuellen PR-Zweigs zu main mit Claude Code prüfen?
Antwort: Führen Sie im Terminal den Befehl
git diff main...feature-branch | claude -p "Code review this PR"aus.
Abschließende Checkliste für die praktische Arbeit
- Verwenden Sie Überblicks-Prompts für das schnelle Kennenlernen neuer Codebasen.
- Untersuchen Sie die Architektur über Flow-Nachverfolgungs-Anfragen („Trace the flow from UI to database“).
- Führen Sie lokale Code Reviews vor dem Erstellen jedes Pull Requests über
claude -pdurch. - Überprüfen Sie den farbigen Diff im Terminal sorgfältig, bevor Sie den Aufruf von
Editbestätigen. - Fixieren Sie den stabilen Zustand über
git commit, bevor Sie komplexe End-to-End-Änderungen beginnen. - Beenden Sie jede Aufgabe immer mit dem Start von Tests und der Prüfung der Typen über
Bash.