Claude Code tajně vylepšen, konečně už není jen "stroj na vyhledávání textu"
Přemýšleli jste někdy při psaní kódu nad otázkou:
Proč můžete ve VS Code kliknutím s Ctrl přímo skočit na definici funkce? Proč, když najedete myší na funkci, vidíte kompletní popis parametrů? Proč vám editor řekne, kde je chyba, ještě než spustíte kód?
Toto jsou funkce, které používáte každý den a jste z nich nadšení.
Možná ale nevíte, že za tím vším stojí něco, čemu se říká LSP (Language Server Protocol).
A co je důležitější, Claude Code od verze 2.0.74 také podporuje LSP.
Co to znamená?
Znamená to, že Claude Code se konečně z "stroje na vyhledávání textu" stal AI, která skutečně rozumí kódu.
Co je LSP? Jednoduše řečeno
LSP je protokol vytvořený Microsoftem, jehož cílem je jednoduché:
Umožnit používání funkcí inteligentního kódu v jakémkoli editoru.
Podívejte se:
-
Jazykový server TypeScriptu funguje ve VS Code, v JetBrains, v Cursor
-
Nyní funguje i v Claude Code
LSP je to, co dělá váš editor chytřejším:
-
Automatické doplňování názvů funkcí a parametrů
-
Přejít na definici
-
Najít všechny odkazy
-
Zobrazení dokumentace při najetí myší
-
Chyby a varování v reálném čase
Toto jsou funkce, které používáte při psaní kódu nesčetněkrát.
Ale nikdy jste se nezamysleli nad tím, jak se to dělá.
Teď už nemusíte, stačí vědět: Claude Code má nyní také tyto možnosti.
Jak Claude Code pracoval dříve?
Před podporou LSP, co musel Claude Code udělat, když chtěl najít, kde je definována funkce?
Spoléhal se na vyhledávání pomocí grep.
Jednoduše řečeno, jednalo se o fulltextové vyhledávání, které hledalo, kde se vyskytují znaky "displayBooks".
Funguje to? Funguje.
AI model byl trénován na obrovském množství kódu a skutečně dokáže odvodit spoustu věcí z textu.
Ale kde je problém?
Nerozumí skutečné struktuře kódu.
Je to jako když někoho požádáte, aby našel "Jana Nováka", a on musí listovat stránku po stránce v telefonním seznamu a hledat slova "Jan Novák".
Zatímco vy, když hledáte "Jana Nováka" na svém mobilu, přímo přistupujete do databáze a výsledek se zobrazí během sekundy.
To je ten rozdíl.
Předchozí Claude Code: Četl soubory jeden po druhém a spoléhal se na porovnávání textu. Nyní Claude Code: Přímo se zeptá jazykového serveru a přesně určí umístění.
Rozdíl v efektivitě je obrovský.
Co LSP přineslo Claude Code?
5 klíčových schopností, z nichž každá je nástrojem pro zvýšení efektivity:
1. goToDefinition - Přejít na definici
Co můžete dělat ve VS Code pomocí Ctrl+Click? Přejít přímo na místo definice funkce.
Nyní to dokáže i Claude Code.
Zeptáte se ho: "Kde je definována funkce processRequest? Použij LSP"
Nebude hloupě prohledávat všechny soubory.
Přímo se zeptá jazykového serveru a během sekundy získá odpověď: název souboru, číslo řádku, přesné umístění.
2. findReferences - Najít všechny odkazy
Tohle je zabijácká funkce.
Chcete refaktorovat funkci, ale bojíte se ji změnit, protože se bojíte, že se něco pokazí jinde.
Co dělat?
Dříve jste museli nechat Claude Code číst soubory jeden po druhém, což bylo strašně pomalé.
Nyní se přímo zeptáte: "Kde všude je volána funkce displayError? Použij LSP"
Jazykový server vám přímo vypíše všechna místa odkazů.
Rychle, přesně, nemilosrdně.
3. hover - Získat dokumentaci a informace o typu
Když ve VS Code najedete myší, vidíte podpis funkce, typy parametrů, popis dokumentace.
Claude Code to nyní také vidí.
Zeptáte se ho: "Jaké parametry přijímá funkce displayBooks? Použij LSP"
Nemusí hádat, přímo čte podpis vrácený jazykovým serverem.
Zejména u dynamických jazyků, jako je Python, mohl Claude dříve pouze odvozovat typy z kontextu. Nyní s LSP jsou informace o typech jasné na první pohled.
4. documentSymbol - Zobrazí všechny symboly souboru
Chcete se rychle dozvědět, jaké třídy, funkce a proměnné se v souboru nacházejí?
Zeptejte se Claude: "Jaké symboly jsou v backend/index.js? Použij LSP"
Vrátil vám strukturovaný seznam, jasně a zřetelně.
5. workspaceSymbol - Vyhledávání symbolů v celém projektu
Tohle je ještě lepší.
Nehledá text, ale symboly.
Chcete najít všechny metody, které obsahují "innerHTML"?
Jazykový server je najde přímo, nejedná se o porovnávání řetězců, ale o skutečné symboly kódu.
Praxe: Jaké problémy LSP vlastně řeší?
Neřešte tyhle nesmysly, podívejte se na skutečné případy.
Případ 1: Sledování volání funkcí
Máte projekt s názvem AseBook Finder a frontend má funkci displayBooks.
Chcete vědět, kde všude je tato funkce volána.
Co jste dělali dříve? Claude Code grep to projel, mohl něco vynechat, mohl hlásit falešné poplachy.
Nyní se zeptejte přímo: "Najdi všechny reference na displayBooks pomocí LSP"
Výsledek:
-
Umístění definice funkce
-
Umístění volání po úspěšném načtení
-
Všechna ostatní místa, kde je odkazováno
Přesné, rychlé, bez vynechání.
Případ 2: Pochopení parametrů funkce
Chcete, aby Claude vygeneroval kód, který volá funkci displayError.
Ale nejste si jisti, jaké parametry tato funkce přijímá.
Zeptejte se ho: "Jaké parametry přijímá displayError? Použij LSP"
Jazykový server vrátí přímo: Přijímá parametr message.
Claude to ví, takže vygenerovaný kód nebude chybný.
Případ 3: Hledání volání API
Chcete najít, kde v projektu je voláno rozhraní /api/recommendations.
Zeptejte se Claude: "Najdi všechny reference na /api/recommendations pomocí LSP"
Najde umístění volání fetch, přesně na řádek.
Ladění problémů s API, sledování toku dat, super užitečné.
Případ 4: Včasné odhalení chyb
Přepracováváte kód a omylem jste překlepli název proměnné.
Za normálních okolností byste museli spustit kód, abyste to zjistili.
Ale s LSP jazykový server kontroluje v reálném čase a okamžitě hlásí problémy Claude Code.
Claude vám řekne, že je zde chyba, ještě před spuštěním kódu.
Jak to nastavit? Hotovo v 5 krocích
Nebojte se, nastavení je jednoduché.
Krok 1: Povolte nástroje LSP
Do konfiguračního souboru shellu (.bashrc nebo .zshrc) přidejte řádek:
exportENABLE_LSP_TOOLS=1 a poté spusťte source ~/.zshrc pro aktivaci.
Krok 2: Nainstalujte plugin jazykového serveru
Otevřete Claude Code a zadejte:
/plugin najděte plugin pro jazyk, který používáte:
-
Python: vyberte pyright-lsp
-
TypeScript/JavaScript: vyberte vtsls nebo typescript-lsp
-
Go: vyberte gopls
-
Rust: vyberte rust-analyzer
Vyberte "Install for me only" a nainstalujte.
Krok 3: Nainstalujte binární soubor jazykového serveru
Plugin je pouze rozhraní, skutečnou práci odvádí samotný jazykový server.
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
Krok 4: Restartujte Claude Codeclaude
Krok 5: Ověření funkčnosti
Zadejte /plugin a zkontrolujte záložku "Installed". Měl by se tam zobrazit váš plugin.
Otestujte to:
Použij LSP pro nalezení všech odkazů na someFunction Pokud Claude Code použije nástroj find_references namísto grep, znamená to, že instalace proběhla úspěšně.
Kdy použít LSP? A kdy ne?
LSP není všemocné.
Scénáře vhodné pro LSP:
-
Velké projekty (stovky souborů)
-
Sledování volání funkcí napříč soubory
-
Potřeba přesných signatur funkcí (zejména u dynamických jazyků)
-
Refaktorování kódu s obavami z chyb
Scénáře nevhodné pro LSP:
-
Malé projekty, rychlé skripty
-
Jednoduché vyhledávání textu
-
Pouze hledání řetězce
Zkrátka, když je grep rychlý, použijte grep, a když je LSP přesné, použijte LSP.
Nástroje jsou tu pro lidi, ne naopak.
Několik nástrah, na které vás upozorním předem
Nástraha 1: Jazykový server musí být v PATH
Pokud Claude Code hlásí "No LSP server available", s největší pravděpodobností jste jazykový server nenainstalovali správně, nebo není v PATH.
Spusťte v terminálu which pyright (nebo váš jazykový server) a zkontrolujte, zda ho najde.
Nástraha 2: Po instalaci pluginu je nutné restartovat
Po instalaci nového pluginu nebo aktualizaci jazykového serveru je nutné restartovat Claude Code.
Jazykové servery se načítají při spuštění.
Nástraha 3: Někdy je potřeba explicitně říct "použij LSP"
Pokud zjistíte, že Claude Code stále používá grep namísto LSP, přidejte větu "použij LSP":
Použij LSP pro nalezení všech odkazů na authenticateUser Tímto dáte najevo, že má použít jazykový server.
Nástraha 4: Žádné vizuální upozornění
Na rozdíl od VS Code, Claude Code vám neřekne, zda je LSP server spuštěný.
Žádná ikona ve stavovém řádku, žádná upozornění.
Jediný způsob, jak to ověřit: praktický test.
Na závěr pár slov
Podpora LSP v Claude Code není malá aktualizace, ale kvalitativní změna.
Předtím to bylo "vyhledávání textu + AI odvozování".
Nyní je to "jazykový server + AI porozumění".
Je to jako přechod od listování v telefonním seznamu k používání vyhledávače.
Rozdíl v efektivitě je obrovský.
Pokud používáte Claude Code pro seriózní projekty, věnujte 5 minut nastavení LSP.
Těchto 5 minut se vyplatí.
Akční plán:
-
Přidejte do konfigurace shellu
export ENABLE_LSP_TOOLS=1 -
Otevřete Claude Code a spusťte
/pluginpro instalaci vašeho jazykového pluginu -
Nainstalujte odpovídající binární soubor jazykového serveru
-
Restartujte Claude Code
-
Otestujte "Použij LSP pro nalezení všech odkazů na XXX"
Po instalaci zjistíte: Tak rychle to Claude Code dokáže.





