Claude Code s'ha actualitzat sigilosament, finalment ja no és una "màquina de cerca de text"
Quan escrius codi, t'has preguntat mai una cosa:
Per què quan prems Ctrl + clic a VS Code, pots saltar directament a la definició de la funció? Per què quan passes el ratolí per sobre d'una funció, pots veure la descripció completa dels paràmetres? Per què el teu codi encara no s'ha executat i l'editor ja et pot dir on hi ha l'error?
Utilitzes aquestes funcions cada dia i et sents genial.
Però potser no saps que tot això està sustentat per una cosa anomenada LSP (Language Server Protocol).
Més important encara, Claude Code a partir de la versió 2.0.74, també admet LSP.
Què significa això?
Significa que Claude Code finalment ha passat de ser una "màquina de cerca de text" a una IA que realment entén el codi.
Què és LSP? En termes senzills
LSP és un protocol creat per Microsoft, l'objectiu del qual és molt senzill:
Permetre que les funcions intel·ligents de codi es puguin utilitzar en qualsevol editor.
Mira:
-
El servidor de llenguatge de TypeScript es pot utilitzar a VS Code, a JetBrains i a Cursor
-
Ara, també es pot utilitzar a Claude Code
LSP és allò que fa que el teu editor sigui més intel·ligent:
-
Autocompletar noms de funcions i paràmetres
-
Saltar a la definició
-
Trobar totes les referències
-
Mostrar la documentació en passar el ratolí
-
Mostrar errors i advertències en temps real
Escrius codi cada dia i has utilitzat aquestes funcions innombrables vegades.
Però mai t'has preguntat com s'implementen.
Ara no cal que t'ho preguntis, només cal que sàpigues que: Claude Code ara també té aquestes capacitats.
Com treballava Claude Code abans?
Abans de suportar LSP, què havia de fer Claude Code per trobar on es definia una funció?
Recórrer a la cerca amb grep.
En poques paraules, era una cerca de text complet, per trobar on apareixien els caràcters "displayBooks".
És útil? Sí, ho és.
El model d'IA ha estat entrenat amb una gran quantitat de codi i, de fet, pot deduir moltes coses a partir del text.
Però quin és el problema?
No entén realment l'estructura del codi.
És com si demanessis a algú que trobi "Joan", només pot fullejar la llibreta d'adreces pàgina per pàgina per trobar les lletres "Joan".
Mentre que si busques "Joan" amb el teu telèfon mòbil, accedeixes directament a la base de dades i obtens els resultats en un segon.
Aquesta és la diferència.
Abans Claude Code: llegia els fitxers un per un, depenent de la coincidència de text. Ara Claude Code: pregunta directament al servidor de llenguatge, localització precisa
La diferència d'eficiència és enorme.
Què ha aportat LSP a Claude Code?
5 capacitats bàsiques, cadascuna d'elles una eina d'eficiència:
1. goToDefinition - Saltar a la definició
Què pots fer amb Ctrl+Click a VS Code? Saltar directament al lloc on es defineix la funció.
Ara Claude Code també pot fer el mateix.
Li preguntes: "On es defineix la funció processRequest? Utilitza LSP"
No buscarà ximplement en tots els fitxers.
Pregunta directament al servidor de llenguatge i obté la resposta en un segon: nom del fitxer, número de línia, ubicació precisa.
2. findReferences - Trobar totes les referències
Aquesta és una funció assassina.
Vols refactoritzar una funció, però no t'atreveixes a canviar-la, per por que es trenqui en altres llocs.
Què fas?
Abans havies de fer que Claude Code llegís els fitxers un per un, molt lent.
Ara preguntes directament: "On s'ha cridat la funció displayError? Utilitza LSP"
El servidor de llenguatge et mostra directament totes les ubicacions de referència.
Ràpid, precís i contundent.
3. hover - Obtenir informació de documentació i tipus
Quan passes el ratolí per sobre a VS Code, pots veure la signatura de la funció, els tipus de paràmetres i la documentació.
Claude Code ara també pot veure-ho.
Li preguntes: "Quins paràmetres accepta la funció displayBooks? Utilitza LSP"
No ha d'endevinar, llegeix directament la signatura que retorna el servidor de llenguatge.
Especialment per a llenguatges dinàmics com Python, abans Claude només podia deduir el tipus a partir del context. Ara amb LSP, la informació de tipus és claríssima.
4. documentSymbol - Llista tots els símbols del fitxer
Vols saber ràpidament quines classes, funcions i variables hi ha en un fitxer?
Pregunta a Claude: "Quins símbols hi ha a backend/index.js? Fes servir LSP"
Tornarà una llista estructurada, clara i neta.
5. workspaceSymbol - Cerca de símbols a tot el projecte
Això és encara més potent.
No cerca text, cerca símbols.
Vols trobar tots els mètodes que contenen "innerHTML"?
El servidor de llenguatge els troba directament, no és una coincidència de cadenes, és un símbol de codi real.
Pràctica: Quins problemes pot resoldre realment LSP?
Deixa't de xerrameca, mira casos reals.
Cas 1: Seguiment de crides a funcions
Hi ha un projecte anomenat AseBook Finder, el frontend té una funció displayBooks.
Vols saber on es crida aquesta funció.
Abans, què feies? Claude Code grep per tot arreu, possiblement ometent o informant falsament.
Ara pregunta directament: "Troba totes les referències a displayBooks amb LSP"
Resultat:
-
Ubicació de la definició de la funció
-
Ubicació on es crida després que fetch tingui èxit
-
Totes les altres ubicacions de referència
Precís, ràpid i sense omissions.
Cas 2: Comprendre els paràmetres de la funció
Vols que Claude generi un fragment de codi que cridi la funció displayError.
Però no estàs segur de quins paràmetres accepta aquesta funció.
Pregunta-li: "Quins paràmetres accepta displayError? Fes servir LSP"
El servidor de llenguatge torna directament: accepta un paràmetre message.
Claude ho sap, el codi generat no tindrà errors.
Cas 3: Trobar crides a l'API
Vols trobar on es crida la interfície /api/recommendations al projecte.
Pregunta a Claude: "Troba totes les referències a /api/recommendations amb LSP"
Trova la ubicació de la crida fetch, precisa fins a la línia.
Depurar problemes de l'API, rastrejar el flux de dades, súper útil.
Cas 4: Detectar errors per endavant
Estàs refactoritzant codi i has escrit malament el nom d'una variable per error.
Normalment, has d'executar el codi per descobrir-ho.
Però amb LSP, el servidor de llenguatge comprova en temps real i informa immediatament a Claude Code quan troba un problema.
Claude t'avisa que hi ha un error abans d'executar el codi.
Com configurar-ho? 5 passos
No t'espantis, la configuració és senzilla.
Pas 1: Habilita les eines LSP
Afegeix una línia al teu fitxer de configuració de shell (.bashrc o .zshrc):
export ENABLE_LSP_TOOLS=1 i després executa source ~/.zshrc perquè tingui efecte.
Pas 2: Instal·la el connector del servidor de llenguatge
Obre Claude Code, introdueix:
/plugin troba el connector corresponent al teu llenguatge:
-
Python: selecciona pyright-lsp
-
TypeScript/JavaScript: selecciona vtsls o typescript-lsp
-
Go: selecciona gopls
-
Rust: selecciona rust-analyzer
Selecciona "Install for me only", instal·la.
Pas 3: Instal·la el fitxer binari del servidor de llenguatge
El connector només és una interfície, el que realment fa la feina és el servidor de llenguatge en si.
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
Pas 4: Reinicia Claude CodeDesprés de la instal·lació, reinicia Claude Code.
claude
Pas 5: Verifica que funciona
Introdueix /plugin, comprova la pestanya "Installed" i assegura't de veure el teu connector.
Fes una prova:
Usa LSP per trobar totes les referències de someFunction Si Claude Code utilitza l'eina find_references en lloc de grep, vol dir que ha funcionat.
Quan utilitzar LSP? Quan no?
LSP no és una solució màgica per a tot.
Escenaris adequats per a LSP:
-
Projectes grans (centenars de fitxers)
-
Seguiment de crides de funcions entre fitxers
-
Necessitat de signatures de funcions precises (especialment llenguatges dinàmics)
-
Refactorització de codi, por a introduir errors
Escenaris no adequats per a LSP:
-
Projectes petits, scripts ràpids
-
Cerques de text senzilles
-
Només buscar una cadena en algun lloc
En poques paraules, utilitza grep quan sigui ràpid i LSP quan sigui precís.
Les eines estan al servei de les persones, no per utilitzar-les per utilitzar-les.
Alguns problemes, t'ho dic per endavant
Problema 1: El servidor de llenguatge ha d'estar a PATH
Si Claude Code diu "No LSP server available", és molt probable que el teu servidor de llenguatge no estigui instal·lat correctament o no estigui a PATH.
Executa which pyright (o el teu servidor de llenguatge) al terminal per veure si el pot trobar.
Problema 2: Després d'instal·lar el connector, cal reiniciar
Després d'instal·lar un nou connector o actualitzar el servidor de llenguatge, assegura't de reiniciar Claude Code.
El servidor de llenguatge es carrega a l'inici.
Problema 3: De vegades cal dir explícitament "Usa LSP"
Si descobreixes que Claude Code encara està utilitzant grep en lloc de LSP, afegeix "Usa LSP":
Usa LSP per trobar totes les referències de authenticateUser Així sabrà que ha d'utilitzar el servidor de llenguatge.
Problema 4: No hi ha indicacions visuals
A diferència de VS Code, Claude Code no et dirà si el servidor LSP està en funcionament.
No hi ha icona a la barra d'estat, ni notificacions.
L'única manera de confirmar-ho: prova real.
Per acabar, dues paraules
El suport de Claude Code per a LSP no és una petita actualització, sinó un canvi qualitatiu.
Abans era "cerca de text + inferència d'IA".
Ara és "servidor de llenguatge + comprensió d'IA".
És com passar de fullejar una agenda telefònica a utilitzar un motor de cerca.
La diferència d'eficiència és abismal.
Si estàs utilitzant Claude Code per a un projecte seriós, dedica 5 minuts a configurar LSP.
Aquests 5 minuts valen la pena.
Llista d'accions:
-
Afegeix
export ENABLE_LSP_TOOLS=1a la configuració del shell -
Obre Claude Code i executa
/pluginper instal·lar el teu connector de llenguatge -
Instal·la els fitxers binaris del servidor de llenguatge corresponent
-
Reinicia Claude Code
-
Prova "Usa LSP per trobar totes les referències de XXX"
Després de la instal·lació, descobriràs que:Resulta que Claude Code pot ser així de ràpid.





