Claude Code hat heimlich ein Upgrade erhalten und ist endlich keine "Textsuchmaschine" mehr
Hast du dir beim Programmieren schon einmal folgende Frage gestellt:
Warum kannst du in VS Code mit Strg + Klick direkt zur Funktionsdefinition springen? Warum siehst du die vollständige Parameterbeschreibung, wenn du mit der Maus über eine Funktion fährst? Warum kann dir dein Editor sagen, wo Fehler sind, bevor dein Code überhaupt ausgeführt wird?
Du nutzt diese Funktionen jeden Tag und bist begeistert.
Aber du weißt vielleicht nicht, dass all dies von einem Ding namens LSP (Language Server Protocol) unterstützt wird.
Noch wichtiger ist, dass Claude Code ab Version 2.0.74 auch LSP unterstützt.
Was bedeutet das?
Das bedeutet, dass Claude Code endlich von einer "Textsuchmaschine" zu einer KI geworden ist, die Code wirklich versteht.
Was ist LSP? Einfach ausgedrückt
LSP ist ein von Microsoft entwickeltes Protokoll mit einem einfachen Ziel:
Code-Intelligenzfunktionen sollen in jedem Editor verwendet werden können.
Schau:
-
Der Language Server von TypeScript kann in VS Code, JetBrains und Cursor verwendet werden.
-
Jetzt kann er auch in Claude Code verwendet werden
LSP ist das, was deinen Editor intelligent macht:
-
Automatische Vervollständigung von Funktionsnamen und Parametern
-
Springen zur Definition
-
Alle Referenzen finden
-
Hover-Anzeige der Dokumentation
-
Echtzeit-Fehler und -Warnungen
Du schreibst jeden Tag Code und hast diese Funktionen unzählige Male verwendet.
Aber du hast dir nie überlegt, wie sie implementiert werden.
Jetzt musst du nicht mehr darüber nachdenken, du musst nur wissen: Claude Code hat jetzt auch diese Fähigkeiten.
Wie hat Claude Code vorher funktioniert?
Bevor Claude Code LSP unterstützte, was musste er tun, um herauszufinden, wo eine Funktion definiert ist?
Sich auf grep-Suche verlassen.
Einfach ausgedrückt, es ist eine Volltextsuche, die nach dem Vorkommen der Zeichenfolge "displayBooks" sucht.
Ist das brauchbar? Ja, es ist brauchbar.
KI-Modelle werden mit riesigen Mengen an Code trainiert und können tatsächlich viele Dinge aus dem Text ableiten.
Aber wo liegt das Problem?
Es versteht die Codestruktur nicht wirklich.
Es ist, als ob man jemanden bittet, nach "Zhang San" zu suchen, und er kann nur Seite für Seite das Telefonbuch durchblättern, um die beiden Zeichen "Zhang San" zu finden.
Aber wenn du mit deinem Handy nach "Zhang San" suchst, greifst du direkt auf die Datenbank zu und erhältst in Sekundenschnelle Ergebnisse.
Das ist der Unterschied.
Der vorherige Claude Code: Liest jede Datei einzeln und verlässt sich auf Textabgleich. Der aktuelle Claude Code: Fragt direkt den Language Server und lokalisiert präzise.
Der Effizienzunterschied ist enorm.
Was hat LSP Claude Code gebracht?
5 Kernfunktionen, jede einzelne ist ein Effizienzgewinn:
1. goToDefinition - Springen zur Definition
Was kannst du in VS Code mit Strg+Klick machen? Direkt zur Funktionsdefinition springen.
Jetzt kann Claude Code das auch.
Du fragst ihn: "Wo ist die Funktion processRequest definiert? Mit LSP"
Er wird nicht dumm herumsuchen und alle Dateien durchsuchen.
Er fragt direkt den Language Server und erhält in Sekundenschnelle die Antwort: Dateiname, Zeilennummer, genaue Position.
2. findReferences - Alle Referenzen finden
Dies ist eine Killerfunktion.
Du möchtest eine Funktion umgestalten, traust dich aber nicht, sie zu ändern, weil du befürchtest, dass andere Stellen abstürzen.
Was tun?
Bisher musstest du Claude Code jede Datei einzeln lesen lassen, was ewig dauerte.
Jetzt fragst du einfach: "Wo wird die Funktion displayError aufgerufen? Mit LSP"
Der Language Server listet dir direkt alle Referenzpositionen auf.
Schnell, präzise und rücksichtslos.
3. hover - Dokument- und Typinformationen abrufen
Wenn du in VS Code mit der Maus über eine Funktion fährst, siehst du die Funktionssignatur, die Parametertypen und die Dokumentationsbeschreibung.
Claude Code kann das jetzt auch sehen.
Frag ihn: "Welche Parameter akzeptiert die Funktion displayBooks? Mit LSP"
Er muss nicht raten, sondern liest direkt die vom Language Server zurückgegebene Signatur.
Besonders bei dynamischen Sprachen wie Python konnte Claude bisher nur Typen aus dem Kontext ableiten. Jetzt mit LSP, Typinformationen auf einen Blick.
4. documentSymbol - Alle Symbole einer Datei auflisten
Möchten Sie schnell einen Überblick über die Klassen, Funktionen und Variablen in einer Datei erhalten?
Fragen Sie Claude: "Welche Symbole gibt es in backend/index.js? Verwende LSP"
Es gibt Ihnen eine strukturierte Liste zurück, klar und deutlich.
5. workspaceSymbol - Projektsuche nach Symbolen
Das ist noch besser.
Es sucht nicht nach Text, sondern nach Symbolen.
Möchten Sie alle Methoden finden, die "innerHTML" enthalten?
Der Language Server findet sie direkt für Sie, keine String-Übereinstimmung, sondern echte Codesymbole.
Praxis: Welche Probleme kann LSP wirklich lösen?
Vergessen Sie die leeren Versprechungen, schauen wir uns echte Anwendungsfälle an.
Fall 1: Funktionsaufrufe verfolgen
Es gibt ein Projekt namens AseBook Finder, das Frontend hat eine displayBooks-Funktion.
Sie möchten wissen, wo diese Funktion aufgerufen wird.
Was haben Sie vorher gemacht? Claude Code grep einmal, möglicherweise fehlend, möglicherweise falsch positiv.
Fragen Sie jetzt direkt: "Finde alle Referenzen von displayBooks mit LSP"
Ergebnis:
-
Position der Funktionsdefinition
-
Position des Aufrufs nach erfolgreichem Fetch
-
Alle anderen Referenzen
Präzise, schnell, ohne Auslassungen.
Fall 2: Funktionsparameter verstehen
Sie möchten, dass Claude ein Code-Snippet generiert, das die displayError-Funktion aufruft.
Sie sind sich aber nicht sicher, welche Parameter diese Funktion akzeptiert.
Fragen Sie ihn: "Welche Parameter akzeptiert displayError? Verwende LSP"
Der Language Server gibt direkt zurück: Akzeptiert einen Message-Parameter.
Claude weiß es, der generierte Code wird keine Fehler enthalten.
Fall 3: API-Aufrufe finden
Sie möchten herausfinden, wo im Projekt die /api/recommendations-Schnittstelle aufgerufen wird.
Fragen Sie Claude: "Finde alle Referenzen von /api/recommendations mit LSP"
Es findet die Position des Fetch-Aufrufs, genau bis zur Zeile.
Super nützlich für die Fehlersuche bei API-Problemen und die Verfolgung von Datenflüssen.
Fall 4: Fehler frühzeitig erkennen
Sie refaktorieren Code und haben versehentlich einen Variablennamen falsch geschrieben.
Normalerweise müssen Sie den Code ausführen, um ihn zu finden.
Aber mit LSP überprüft der Language Server in Echtzeit und meldet Probleme sofort an Claude Code.
Claude sagt Ihnen, dass hier ein Fehler vorliegt, bevor Sie den Code ausführen.
Wie richte ich das ein? 5 Schritte sind erledigt
Keine Panik, die Einrichtung ist einfach.
Schritt 1: LSP-Tools aktivieren
Fügen Sie in Ihrer Shell-Konfigurationsdatei (.bashrc oder .zshrc) eine Zeile hinzu:
export ENABLE_LSP_TOOLS=1 und führen Sie dann source ~/.zshrc aus, um sie zu aktivieren.
Schritt 2: Language Server-Plugin installieren
Öffnen Sie Claude Code und geben Sie Folgendes ein:
/plugin Finden Sie das Plugin für Ihre Sprache:
-
Python: Wählen Sie pyright-lsp
-
TypeScript/JavaScript: Wählen Sie vtsls oder typescript-lsp
-
Go: Wählen Sie gopls
-
Rust: Wählen Sie rust-analyzer
Wählen Sie "Nur für mich installieren", um es zu installieren.
Schritt 3: Binärdatei des Language Servers installieren
Das Plugin ist nur eine Schnittstelle, die eigentliche Arbeit wird vom Language Server selbst erledigt.
Python:
pip install pyright TypeScript/JavaScript:
npm install -g @vtsls/language-server typescript Go:
go install golang.org/x/tools/gopls@latest Rust:
rustup component add rust-analyzer
Schritt 4: Claude Code neu startenclaude
Schritt 5: Überprüfen, ob es funktioniert
Geben Sie /plugin ein und überprüfen Sie die Registerkarte "Installed". Wenn Sie Ihr Plugin sehen, ist alles in Ordnung.
Testen Sie es:
Finde alle Referenzen von someFunction mit LSP. Wenn Claude Code das Tool find_references anstelle von grep verwendet, war es erfolgreich.
Wann sollte man LSP verwenden? Wann nicht?
LSP ist nicht allmächtig.
Geeignete Szenarien für LSP:
-
Große Projekte (Hunderte von Dateien)
-
Dateiübergreifendes Verfolgen von Funktionsaufrufen
-
Benötigt genaue Funktionssignaturen (insbesondere dynamische Sprachen)
-
Refactoring von Code, um Bugs zu vermeiden
Nicht geeignete Szenarien für LSP:
-
Kleine Projekte, schnelle Skripte
-
Einfache Textsuche
-
Nur um herauszufinden, wo sich eine Zeichenkette befindet
Kurz gesagt, verwenden Sie grep, wenn es schnell ist, und LSP, wenn es genau ist.
Werkzeuge sind für den Menschen da, nicht um des Gebrauchs willen.
Einige Fallstricke, die ich Ihnen im Voraus mitteilen möchte
Falle 1: Der Language Server muss sich im PATH befinden
Wenn Claude Code "No LSP server available" sagt, ist Ihr Language Server höchstwahrscheinlich nicht richtig installiert oder befindet sich nicht im PATH.
Führen Sie which pyright (oder Ihren Language Server) im Terminal aus, um zu sehen, ob er gefunden werden kann.
Falle 2: Nach der Installation des Plugins muss neu gestartet werden
Nach der Installation eines neuen Plugins oder der Aktualisierung des Language Servers müssen Sie Claude Code unbedingt neu starten.
Der Language Server wird beim Start geladen.
Falle 3: Manchmal muss man explizit "mit LSP" sagen
Wenn Sie feststellen, dass Claude Code immer noch grep anstelle von LSP verwendet, fügen Sie "mit LSP" hinzu:
Finde alle Referenzen von authenticateUser mit LSP. Auf diese Weise weiß er, dass er den Language Server verwenden soll.
Falle 4: Keine visuelle Anzeige
Im Gegensatz zu VS Code zeigt Claude Code nicht an, ob der LSP-Server ausgeführt wird.
Kein Statussymbol, keine Benachrichtigungen.
Die einzige Möglichkeit, dies zu bestätigen: tatsächlicher Test.
Zum Schluss noch zwei Worte
Die Unterstützung von LSP durch Claude Code ist keine kleine Aktualisierung, sondern eine qualitative Veränderung.
Zuvor war es "Textsuche + KI-Inferenz".
Jetzt ist es "Language Server + KI-Verständnis".
Es ist, als ob Sie von der Suche im Telefonbuch zur Verwendung einer Suchmaschine übergehen.
Der Effizienzunterschied ist himmelweit.
Wenn Sie Claude Code für ein ernsthaftes Projekt verwenden, nehmen Sie sich 5 Minuten Zeit, um LSP einzurichten.
Diese 5 Minuten sind es wert.
Aktionsliste:
-
Fügen Sie
export ENABLE_LSP_TOOLS=1in Ihrer Shell-Konfiguration hinzu -
Öffnen Sie Claude Code und führen Sie
/pluginaus, um Ihr Sprach-Plugin zu installieren -
Installieren Sie die entsprechende Language Server-Binärdatei
-
Starten Sie Claude Code neu
-
Testen Sie "Finde alle Referenzen von XXX mit LSP"
Nach der Installation werden Sie feststellen:Ursprünglich Claude Code kann noch so schnell sein.





