Claude Code potajno nadograđen, konačno nije više "stroj za pretraživanje teksta"
Dok pišete kod, jeste li se ikada zapitali:
Zašto u VS Codeu pritiskom na Ctrl + klik možete izravno skočiti na definiciju funkcije? Zašto, kada zadržite pokazivač miša iznad funkcije, možete vidjeti potpune informacije o parametrima? Zašto vam urednik može reći gdje griješite prije nego što vaš kod pokrene?
Ove značajke koristite svaki dan i uživate u njima.
Ali možda ne znate da iza svega toga stoji nešto što se zove LSP (Language Server Protocol).
Još važnije, Claude Code od verzije 2.0.74 također podržava LSP.
Što to znači?
To znači da je Claude Code konačno postao AI koji uistinu razumije kod, a ne samo "stroj za pretraživanje teksta".
Što je LSP? Jednostavnim jezikom
LSP je protokol koji je razvio Microsoft, a svrha mu je jednostavna:
Omogućiti korištenje značajki pametnog koda u bilo kojem uređivaču.
Vidite:
-
Jezični poslužitelj TypeScripta može se koristiti u VS Codeu, JetBrainsu i Cursoru
-
Sada se može koristiti i u Claude Codeu
LSP je ono što vaš uređivač čini pametnim:
-
Automatsko dovršavanje imena funkcija i parametara
-
Skok na definiciju
-
Pronalaženje svih referenci
-
Prikaz dokumentacije pri lebdenju
-
Greške i upozorenja u stvarnom vremenu
Ove značajke koristite bezbroj puta svaki dan dok pišete kod.
Ali nikada niste razmišljali o tome kako se to postiže.
Sada ne morate razmišljati, samo trebate znati: Claude Code sada također ima te mogućnosti.
Kako je Claude Code radio prije?
Prije podrške za LSP, što je Claude Code morao učiniti da pronađe gdje je definirana funkcija?
Oslanjao se na grep pretraživanje.
Jednostavno rečeno, to je pretraživanje cijelog teksta, traženje gdje se pojavljuju znakovi "displayBooks".
Je li to korisno? Jest.
AI modeli su obučeni na ogromnoj količini koda i doista mogu zaključiti mnoge stvari iz teksta.
Ali u čemu je problem?
Ne razumije uistinu strukturu koda.
To je kao da nekoga zamolite da pronađe "Ivan Horvat", on može samo listati imenik stranicu po stranicu tražeći ta dva imena.
Dok vi pomoću telefona pretražujete "Ivan Horvat", izravno pozivate bazu podataka i dobivate rezultat u sekundi.
To je razlika.
Prijašnji Claude Code: čitao je datoteke jednu po jednu, oslanjajući se na podudaranje teksta. Sadašnji Claude Code: izravno pita jezični poslužitelj, precizno lociranje
Razlika u učinkovitosti je ogromna.
Što je LSP donio Claude Codeu?
5 ključnih mogućnosti, svaka od njih je alat za učinkovitost:
1. goToDefinition - Skok na definiciju
Što možete učiniti s Ctrl+Click u VS Codeu? Izravno skočiti na mjesto definicije funkcije.
Sada to može učiniti i Claude Code.
Pitate ga: "Gdje je definirana funkcija processRequest? Koristi LSP"
Neće glupo pretraživati sve datoteke.
Izravno pita jezični poslužitelj i dobiva odgovor u sekundi: naziv datoteke, broj retka, točna lokacija.
2. findReferences - Pronalaženje svih referenci
Ovo je ubojita značajka.
Želite refaktorirati funkciju, ali se bojite promijeniti je, jer se bojite da će se srušiti na drugim mjestima.
Što učiniti?
Prije ste morali dopustiti Claude Codeu da čita datoteke jednu po jednu, što je bilo užasno sporo.
Sada izravno pitate: "Gdje se poziva funkcija displayError? Koristi LSP"
Jezični poslužitelj izravno navodi sve lokacije referenci.
Brzo, točno i nemilosrdno.
3. hover - Dobivanje informacija o dokumentaciji i vrsti
Kada zadržite pokazivač miša u VS Codeu, možete vidjeti potpis funkcije, vrstu parametra i objašnjenje dokumentacije.
Claude Code to sada također može vidjeti.
Pitate ga: "Koje parametre prihvaća funkcija displayBooks? Koristi LSP"
Ne mora nagađati, izravno čita potpis koji vraća jezični poslužitelj.
Pogotovo za dinamičke jezike kao što je Python, Claude se prije mogao oslanjati samo na kontekst za zaključivanje vrste.Sada s LSP-om, informacije o tipovima su kristalno jasne.
4. documentSymbol - Popis svih simbola u datoteci
Želite brzo saznati koje klase, funkcije i varijable postoje u datoteci?
Pitajte Claudea: "Koji su simboli u backend/index.js? Koristi LSP"
Vraća vam strukturirani popis, sve je jasno.
5. workspaceSymbol - Pretraživanje simbola u cijelom projektu
Ovo je još bolje.
Ne pretražuje tekst, već simbole.
Želite pronaći sve metode koje sadrže "innerHTML"?
Jezični poslužitelj ih pronalazi izravno, nije podudaranje nizova, već pravi simboli koda.
Praktična primjena: Koje probleme LSP zapravo rješava?
Ostavite te apstraktne stvari, pogledajte stvarne primjere.
Primjer 1: Praćenje poziva funkcija
Postoji projekt pod nazivom AseBook Finder, frontend ima funkciju displayBooks.
Želite znati gdje se ta funkcija poziva.
Što ste radili prije? Claude Code grep jednom, možda propusti, možda lažno prijavi.
Sada pitajte izravno: "Pronađi sve reference na displayBooks pomoću LSP-a"
Rezultat:
-
Lokacija definicije funkcije
-
Lokacija poziva nakon uspješnog dohvaćanja
-
Sve ostale lokacije referenci
Precizno, brzo, bez propusta.
Primjer 2: Razumijevanje parametara funkcije
Želite da Claude generira isječak koda koji poziva funkciju displayError.
Ali niste sigurni koje parametre ta funkcija prihvaća.
Pitajte ga: "Koje parametre prihvaća displayError? Koristi LSP"
Jezični poslužitelj izravno vraća: prihvaća parametar message.
Claude zna, generirani kod neće biti pogrešan.
Primjer 3: Pronalaženje API poziva
Želite pronaći gdje u projektu se poziva /api/recommendations API.
Pitajte Claudea: "Pronađi sve reference na /api/recommendations pomoću LSP-a"
Pronaći će lokaciju fetch poziva, precizno do retka.
Super korisno za otklanjanje pogrešaka u API-ju i praćenje protoka podataka.
Primjer 4: Rano otkrivanje pogrešaka
Refaktorirate kod i slučajno pogrešno napišete naziv varijable.
U normalnim okolnostima, morate pokrenuti kod da biste to otkrili.
Ali s LSP-om, jezični poslužitelj provjerava u stvarnom vremenu i odmah prijavljuje problem Claude Codeu.
Claude vam kaže prije nego što pokrenete kod: ovdje je pogreška.
Kako postaviti? Gotovo u 5 koraka
Ne brinite, postavljanje je jednostavno.
Korak 1: Omogućite LSP alate
Dodajte redak u svoju konfiguracijsku datoteku ljuske (.bashrc ili .zshrc):
exportENABLE_LSP_TOOLS=1 zatim pokrenite source ~/.zshrc da bi stupilo na snagu.
Korak 2: Instalirajte dodatak jezičnog poslužitelja
Otvorite Claude Code, unesite:
/plugin pronađite dodatak za jezik koji koristite:
-
Python: odaberite pyright-lsp
-
TypeScript/JavaScript: odaberite vtsls ili typescript-lsp
-
Go: odaberite gopls
-
Rust: odaberite rust-analyzer
Odaberite "Install for me only" i instalirajte.
Korak 3: Instalirajte binarne datoteke jezičnog poslužitelja
Dodatak je samo sučelje, pravi posao obavlja sam jezični poslužitelj.
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
Korak 4: Ponovno pokrenite Claude CodeNakon instalacije, ponovno pokrenite Claude Code.
claude
Korak 5: Provjera radi li
Upišite /plugin i provjerite karticu "Installed". Trebali biste vidjeti svoj dodatak.
Testirajte:
Pronađi sva referiranja na someFunction pomoću LSP-a Ako Claude Code koristi alat find_references umjesto grep-a, znači da je uspjelo.
Kada koristiti LSP? Kada ne?
LSP nije svemoguć.
Scenariji u kojima je LSP prikladan:
-
Veliki projekti (stotine datoteka)
-
Praćenje poziva funkcija kroz datoteke
-
Potrebni su precizni potpisi funkcija (posebno dinamički jezici)
-
Refaktoriranje koda, strah od uvođenja bugova
Scenariji u kojima LSP nije prikladan:
-
Mali projekti, brze skripte
-
Jednostavna pretraga teksta
-
Samo pronalaženje lokacije niza znakova
Ukratko, koristite grep kada je brz, a LSP kada je precizan.
Alati služe ljudima, a ne obrnuto.
Nekoliko zamki, da znate unaprijed
Zamka 1: Jezični server mora biti u PATH-u
Ako Claude Code kaže "No LSP server available", vjerojatno vaš jezični server nije ispravno instaliran ili nije u PATH-u.
Pokrenite which pyright (ili vaš jezični server) u terminalu da vidite može li se pronaći.
Zamka 2: Nakon instalacije potrebno je ponovno pokretanje
Nakon instaliranja novog dodatka ili ažuriranja jezičnog servera, obavezno ponovno pokrenite Claude Code.
Jezični serveri se učitavaju pri pokretanju.
Zamka 3: Ponekad je potrebno eksplicitno reći "koristi LSP"
Ako primijetite da Claude Code i dalje koristi grep umjesto LSP-a, dodajte "koristi LSP":
Pronađi sva referiranja na authenticateUser koristeći LSP Tako će znati da treba koristiti jezični server.
Zamka 4: Nema vizualnih indikacija
Za razliku od VS Code-a, Claude Code vam neće reći radi li LSP server ili ne.
Nema ikone u statusnoj traci, nema obavijesti.
Jedini način da se to potvrdi: stvarno testiranje.
Za kraj, par riječi
Podrška za LSP u Claude Code-u nije malo ažuriranje, već kvalitativna promjena.
Prije je to bilo "pretraživanje teksta + AI zaključivanje".
Sada je to "jezični server + AI razumijevanje".
Kao da ste prešli s pretraživanja imenika na korištenje tražilice.
Razlika u učinkovitosti je ogromna.
Ako koristite Claude Code za ozbiljan projekt, odvojite 5 minuta da postavite LSP.
Tih 5 minuta se isplati.
Popis zadataka:
-
Dodajte
export ENABLE_LSP_TOOLS=1u konfiguraciju ljuske (shell) -
Otvorite Claude Code i pokrenite
/pluginda instalirate svoj jezični dodatak -
Instalirajte odgovarajuću binarnu datoteku jezičnog servera
-
Ponovno pokrenite Claude Code
-
Testirajte s "Pronađi sva referiranja na XXX koristeći LSP"
Nakon instalacije, otkrit ćete: Ispostavilo se da Claude Code može biti ovako brz.





