Claude Code titokban frissült, végre nem csak egy "szöveges keresőgép"
Kódírás közben gondolkodtál már a következőn:
Mért van az, hogy a VS Code-ban a Ctrl + kattintással egyből a függvény definíciójához ugorhatsz? Mért van az, hogy ha az egeret a függvény fölé viszed, láthatod a teljes paraméter leírást? Mért tudja a szerkesztő megmondani, hogy hol van a hiba, mielőtt a kód lefutna?
Ezeket a funkciókat nap mint nap használod, és nagyon jók.
De lehet, hogy nem tudod, hogy mindezt egy LSP (Language Server Protocol) nevű dolog támogatja.
És ami még fontosabb, a Claude Code 2.0.74-es verziójától kezdve támogatja az LSP-t is.
Mit jelent ez?
Azt jelenti, hogy a Claude Code végre egy "szöveges keresőgépből" egy olyan AI-vá vált, ami tényleg érti a kódot.
Mi az az LSP? Egyszerűen fogalmazva
Az LSP egy Microsoft által létrehozott protokoll, aminek a célja egyszerű:
Az, hogy a kód intelligens funkciói bármilyen szerkesztőben használhatók legyenek.
Nézd:
-
A TypeScript nyelvi szervere használható a VS Code-ban, a JetBrains-ben és a Cursor-ban is.
-
Mostantól a Claude Code-ban is használható
Az LSP az, ami okosabbá teszi a szerkesztődet:
-
Automatikus kiegészítés függvénynevekhez és paraméterekhez
-
Ugrás a definícióhoz
-
Összes hivatkozás keresése
-
Dokumentáció megjelenítése egérrel
-
Valós idejű hibák és figyelmeztetések
Ezeket a funkciókat nap mint nap használod kódírás közben, számtalanszor.
De sosem gondolkodtál azon, hogy ez hogyan valósul meg.
Most már nem kell gondolkodnod, csak azt kell tudnod, hogy: A Claude Code mostantól rendelkezik ezekkel a képességekkel.
Hogyan dolgozott a Claude Code korábban?
Mielőtt az LSP-t támogatta, mit kellett tennie a Claude Code-nak, ha meg akarta találni, hogy hol van egy függvény definiálva?
A grep keresésre támaszkodott.
Egyszerűen fogalmazva, teljes szöveges keresést végzett, és megkereste, hogy hol fordul elő a "displayBooks" karaktersorozat.
Használható ez? Igen, használható.
Az AI modellek rengeteg kóddal lettek betanítva, és valóban képesek sok dolgot kikövetkeztetni a szövegből.
De mi a probléma?
Nem igazán érti a kód szerkezetét.
Olyan, mintha megkérnél valakit, hogy keresse meg a "张三"-t (Zhang San), és csak lapozgatnia kellene a telefonkönyvet, hogy megtalálja a "张三" karaktereket.
Míg ha a telefonodon keresel rá a "张三"-ra, akkor közvetlenül az adatbázist hívod meg, és másodpercek alatt megkapod az eredményt.
Ez a különbség.
A korábbi Claude Code: fájlokat olvasott egyesével, és szöveges egyezés alapján dolgozott. A mostani Claude Code: közvetlenül a nyelvi szervert kérdezi, és pontosan meghatározza a helyet.
Nem kicsi a hatékonyság különbsége.
Mit hozott az LSP a Claude Code-nak?
5 alapvető képesség, mindegyik hatékonyságnövelő:
1. goToDefinition - Ugrás a definícióhoz
Mit csinál a Ctrl+Click a VS Code-ban? Közvetlenül a függvény definíciójához ugrik.
Mostantól a Claude Code is képes erre.
Megkérdezed tőle: "Hol van definiálva a processRequest függvény? Használd az LSP-t"
Nem fogja bután végigkeresni az összes fájlt.
Közvetlenül megkérdezi a nyelvi szervert, és másodpercek alatt megadja a választ: fájlnév, sorszám, pontos hely.
2. findReferences - Összes hivatkozás keresése
Ez egy gyilkos funkció.
Át akarsz strukturálni egy függvényt, de nem mered megváltoztatni, mert félsz, hogy máshol összeomlik.
Mit tegyél?
Korábban a Claude Code-nak egyesével kellett olvasnia a fájlokat, ami nagyon lassú volt.
Mostantól közvetlenül megkérdezed: "A displayError függvényt hol hívták meg? Használd az LSP-t"
A nyelvi szerver közvetlenül felsorolja az összes hivatkozási helyet.
Gyors, pontos és hatékony.
3. hover - Dokumentáció és típusinformációk lekérése
A VS Code-ban az egérrel a függvény fölé viszed, és láthatod a függvény szignatúráját, a paramétertípusokat és a dokumentációt.
A Claude Code mostantól ezt is látja.
Megkérdezed tőle: "Milyen paramétereket fogad el a displayBooks függvény? Használd az LSP-t"
Nem kell találgatnia, közvetlenül beolvassa a nyelvi szerver által visszaadott szignatúrát.
Különösen a Python esetében, ami egy dinamikus nyelv, korábban Claude csak a kontextus alapján tudta kikövetkeztetni a típust.Most már az LSP-vel a típusinformációk egyértelműek.
4. documentSymbol - Felsorolja a fájl összes szimbólumát
Szeretné gyorsan megtudni, hogy egy fájlban milyen osztályok, függvények, változók vannak?
Kérdezze meg Claude-ot: "Milyen szimbólumok vannak a backend/index.js-ben? Használd az LSP-t"
Egy strukturált listát ad vissza, világosan és egyértelműen.
5. workspaceSymbol - Teljes projekt szimbólumkeresése
Ez még durvább.
Nem szöveget keres, hanem szimbólumokat.
Meg szeretné találni az összes "innerHTML"-t tartalmazó metódust?
A nyelvi szerver közvetlenül megkeresi őket, nem karakterlánc-egyezés, hanem valódi kódszimbólumok.
Éles helyzet: Milyen problémákat old meg valójában az LSP?
Ne beszéljünk üres dolgokról, nézzünk meg valós példákat.
1. példa: Függvényhívások nyomon követése
Van egy AseBook Finder nevű projekt, az előlapon van egy displayBooks függvény.
Szeretné tudni, hogy ez a függvény hol van meghívva.
Korábban mit csinált? Claude Code grep végigment rajta, lehet, hogy kihagyott valamit, lehet, hogy téves riasztást adott.
Most közvetlenül kérdezze meg: "Keresd meg a displayBooks összes hivatkozását az LSP-vel"
Eredmény:
-
A függvény definíciójának helye
-
A fetch sikeres végrehajtása után meghívott hely
-
Az összes többi hivatkozási hely
Pontos, gyors, és nem hagy ki semmit.
2. példa: Függvényparaméterek megértése
Szeretné, hogy Claude generáljon egy kódrészletet, amely meghívja a displayError függvényt.
De nem biztos benne, hogy ez a függvény milyen paramétereket fogad el.
Kérdezze meg tőle: "Milyen paramétereket fogad el a displayError? Használd az LSP-t"
A nyelvi szerver közvetlenül visszaadja: egy message paramétert fogad el.
Claude tudja, hogy a generált kód nem fog hibázni.
3. példa: API hívások keresése
Meg szeretné találni, hogy a projektben hol hívják meg a /api/recommendations API-t.
Kérdezze meg Claude-ot: "Keresd meg a /api/recommendations összes hivatkozását az LSP-vel"
Megtalálja a fetch hívás helyét, pontosan a sorig.
API problémák hibakeresése, adatfolyam nyomon követése, szuper hasznos.
4. példa: Hibák korai felfedezése
Kódot refaktorál, és véletlenül elgépel egy változónevet.
Normál esetben futtatnia kell a kódot, hogy felfedezze.
De az LSP-vel a nyelvi szerver valós időben ellenőrzi, és azonnal jelenti a problémát a Claude Code-nak.
Claude még a kód futtatása előtt megmondja: itt hiba van.
Hogyan kell beállítani? 5 lépésben kész
Ne ess kétségbe, a beállítás egyszerű.
1. lépés: Az LSP eszközök engedélyezése
Adjon hozzá egy sort a shell konfigurációs fájljához (.bashrc vagy .zshrc):
export ENABLE_LSP_TOOLS=1 majd futtassa a source ~/.zshrc parancsot a hatályba léptetéshez.
2. lépés: Nyelvi szerver bővítmény telepítése
Nyissa meg a Claude Code-ot, és írja be:
/plugin keresse meg a használt nyelvhez tartozó bővítményt:
-
Python: válassza a pyright-lsp-t
-
TypeScript/JavaScript: válassza a vtsls vagy a typescript-lsp-t
-
Go: válassza a gopls-t
-
Rust: válassza a rust-analyzer-t
Válassza az "Install for me only" lehetőséget a telepítéshez.
3. lépés: Nyelvi szerver bináris fájljának telepítése
A bővítmény csak egy interfész, a valódi munkát a nyelvi szerver végzi.
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
4. lépés: Indítsa újra a Claude Code-otTelepítés után indítsd újra a Claude Code-ot.
claude
5. lépés: Ellenőrizd, hogy működik-e
Gépeld be a /plugin parancsot, és nézd meg az "Installed" (Telepített) fület. Ha látod a bővítményedet, akkor jó.
Teszteld le:
Keressd meg az someFunction összes hivatkozását LSP-vel Ha a Claude Code a find_references eszközt használja a grep helyett, akkor sikeres volt.
Mikor használj LSP-t? Mikor ne?
Az LSP nem mindenható.
Az LSP-re alkalmas helyzetek:
-
Nagy projektek (több száz fájl)
-
Függvényhívások nyomon követése fájlok között
-
Pontos függvényszignatúrákra van szükség (különösen dinamikus nyelveknél)
-
Kód refaktorálása, nehogy hibát okozz
Az LSP-re nem alkalmas helyzetek:
-
Kicsi projektek, gyors szkriptek
-
Egyszerű szöveges keresés
-
Csak egy karakterlánc helyének megkeresése
Egyszerűen fogalmazva, használd a grepet, amikor gyors, és az LSP-t, amikor pontos.
Az eszköz az embert szolgálja, nem pedig fordítva.
Néhány buktató, előre szólok
1. buktató: A nyelvi szervernek a PATH-ban kell lennie
Ha a Claude Code azt mondja, hogy "No LSP server available" (Nincs elérhető LSP szerver), akkor valószínűleg a nyelvi szervered nincs megfelelően telepítve, vagy nincs a PATH-ban.
Futtasd a which pyright (vagy a nyelvi szervered) parancsot a terminálban, hogy lásd, megtalálja-e.
2. buktató: A bővítmény telepítése után újra kell indítani
Új bővítmény telepítése vagy a nyelvi szerver frissítése után mindenképpen indítsd újra a Claude Code-ot.
A nyelvi szerverek indításkor töltődnek be.
3. buktató: Néha egyértelműen ki kell mondani, hogy "LSP-vel"
Ha azt tapasztalod, hogy a Claude Code még mindig a grepet használja az LSP helyett, tegyél hozzá egy "LSP-vel" kifejezést:
Keressd meg az authenticateUser összes hivatkozását LSP-vel Így tudni fogja, hogy a nyelvi szervert kell használnia.
4. buktató: Nincsenek vizuális jelzések
A VS Code-dal ellentétben a Claude Code nem fogja megmutatni, hogy az LSP szerver fut-e.
Nincs állapotjelző ikon, nincsenek értesítések.
Az egyetlen módja a megerősítésnek: tényleges tesztelés.
Végül még néhány szó
Az, hogy a Claude Code támogatja az LSP-t, nem kis frissítés, hanem minőségi változás.
Korábban "szöveges keresés + AI következtetés" volt.
Most "nyelvi szerver + AI megértés".
Olyan, mintha a telefonkönyv lapozgatása helyett keresőmotort használnál.
A hatékonyságbeli különbség ég és föld.
Ha komoly projektekhez használod a Claude Code-ot, szánj 5 percet az LSP beállítására.
Ez az 5 perc megéri.
Teendők listája:
-
Add hozzá az
export ENABLE_LSP_TOOLS=1sort a shell konfigurációjához -
Nyisd meg a Claude Code-ot, és futtasd a
/pluginparancsot a nyelvi bővítmény telepítéséhez -
Telepítsd a megfelelő nyelvi szerver bináris fájljait
-
Indítsd újra a Claude Code-ot
-
Teszteld le a "Keressd meg az XXX összes hivatkozását LSP-vel" paranccsal
Telepítés után azt fogod tapasztalni, hogy: Eredetileg Claude Code még ilyen gyors is lehet.





