lsp-setup
Faz seu agente configurar ferramentas de desenvolvimento que ajudam a entender o código. Útil para habilitar recursos como autocompletar e encontrar definições de funções.
O que ela faz
Esta ferramenta ajuda a configurar o 'servidor de linguagem' correto para o seu projeto de programação. Isso faz com que recursos como encontrar erros, ir para a definição de código e renomear funções funcionem corretamente.
Quando usar
- ✓Quando você recebe um erro dizendo 'nenhum servidor LSP configurado'.
- ✓Quando você quer que as ferramentas de código (como encontrar erros) funcionem no seu projeto.
- ✓Ao iniciar um novo projeto em uma linguagem de programação suportada.
Exemplo do que pedir para a IA
“Configure o servidor de linguagem para o meu projeto Python.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta primeiro identifica a linguagem do seu projeto. Em seguida, ela instala o servidor de linguagem necessário e configura as ferramentas para que elas funcionem corretamente.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add code-yeongyu/oh-my-openagent --skill lsp-setupOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/dev/packages/shared-skills/skills/lsp-setup/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Configuração do LSP
Configure o Language Server correto para um projeto para que as ferramentas MCP lsp
(diagnostics, goto_definition, find_references, symbols, rename)
funcionem de verdade. Essa habilidade é um índice: detecta o que um projeto precisa, instala o
servidor, escreve a configuração e, em seguida, verifica com um roundtrip real.
A lista de servidores que fornecemos como embutidos é a fonte da verdade em
packages/lsp-tools-mcp/src/lsp/server-definitions.ts (BUILTIN_SERVERS +
LSP_INSTALL_HINTS). As referências por idioma abaixo a espelham.
FASE 0 — GATE DE IDIOMA (execute primeiro)
Identifique o idioma pela extensão do arquivo e, em seguida, leia a referência correspondente antes de instalar ou configurar qualquer coisa.
| Extensão(ões) | Referência |
|---|---|
.ts .tsx .js .jsx .mjs .cjs .mts .cts .vue .svelte .astro |
references/typescript/README.md |
.py .pyi |
references/python/README.md |
.go |
references/go/README.md |
.rs |
references/rust/README.md |
.c .cpp .cc .cxx .h .hpp .hh .hxx |
references/c-cpp/README.md |
.java |
references/java/README.md |
.kt .kts |
references/kotlin/README.md |
.cs .razor .cshtml |
references/csharp/README.md |
.swift |
references/swift/README.md |
.rb .rake .gemspec .ru |
references/ruby/README.md |
.php |
references/php/README.md |
.dart |
references/dart/README.md |
.ex .exs |
references/elixir/README.md |
.zig .zon |
references/zig/README.md |
.lua |
references/lua/README.md |
.sh .bash .zsh .ksh |
references/bash/README.md |
.yaml .yml |
references/yaml/README.md |
.tf .tfvars |
references/terraform/README.md |
.hs .lhs |
references/haskell/README.md |
.jl |
references/julia/README.md |
FLUXO DE TRABALHO — detectar → instalar → configurar → verificar
1. Detectar
Escaneie o projeto para ver quais idiomas estão presentes e se cada servidor está instalado e configurado:
bun scripts/detect-lsp.ts <projectDir> # human report (default: cwd)
bun scripts/detect-lsp.ts <projectDir> --json
Para cada idioma detectado, ele imprime o ID do servidor embutido, o executável que
ele precisa no PATH, se esse executável está instalado, uma dica de instalação e
se um arquivo de configuração do projeto já o referencia.
2. Instalar
Abra references/<language>/README.md e execute o comando de instalação para o seu sistema operacional.
Em seguida, confirme se o executável é resolvido:
command -v <server-executable> # e.g. typescript-language-server, gopls, rust-analyzer
3. Configurar
A maioria dos servidores embutidos não precisa de configuração — eles são resolvidos automaticamente por
extensão de arquivo. Escreva a configuração apenas para: escolher entre servidores concorrentes, definir um
priority, passar opções de initialization, substituir extensions, definir env ou
disable um servidor.
Dois arquivos de configuração com escopo de projeto, forma JSON idêntica:
- Harness do Codex →
.codex/lsp-client.json(usuário:~/.codex/lsp-client.json) - Harness do OpenCode/omo →
.opencode/lsp.json(também.omo/lsp.json)
{
"lsp": {
"<server-id>": {
"command": ["<bin>", "<args>"], // optional for builtin ids (supplied automatically)
"extensions": [".ext"], // optional override
"priority": 100, // higher wins when several servers match an extension
"initialization": { }, // server-specific initializationOptions
"env": { "KEY": "value" }, // optional
"disabled": false // set true to turn a server off
}
}
}
Regras aplicadas pelo config-loader.ts:
- Em uma configuração de projeto (
.codex/lsp-client.json,.opencode/lsp.json), uma entrada cujo ID é um servidor embutido herdacommandautomaticamente — você apenas substituiextensions/priority/initialization. Um ID não embutido em uma configuração de projeto é ignorado. - Para definir um servidor totalmente personalizado (não embutido) com seu próprio
command, coloque-o na configuração do usuário (~/.codex/lsp-client.json, ou o caminho definido porLSP_TOOLS_MCP_USER_CONFIG), ondecommand+extensionssão respeitados. - Entradas de projeto têm precedência sobre entradas de usuário; ambas têm precedência sobre os padrões embutidos.
Cada referência de idioma fornece um trecho pronto para colar.
4. Verificar
Execute um roundtrip de diagnóstico real contra um arquivo de origem. Isso inicia o servidor,
abre o arquivo, solicita diagnósticos e relata OK/FAIL:
bun scripts/verify-lsp.ts <path/to/file.ext>
bun scripts/verify-lsp.ts <file> --timeout=90000
…
Perguntas frequentes
O que é um 'servidor de linguagem'?
É um programa que entende a sua linguagem de programação e ajuda as ferramentas de edição de código a fornecerem informações úteis, como erros e sugestões.
Quais linguagens são suportadas?
A ferramenta suporta várias linguagens como TypeScript, Python, Go, Rust, C/C++, Java, C#, Swift, Ruby, PHP, Dart, Elixir, Zig, Lua, Bash, YAML, Terraform, Haskell e Julia.
Preciso instalar algo antes?
Sim, você pode precisar instalar o servidor de linguagem específico para a sua linguagem de programação, seguindo as instruções fornecidas pela ferramenta.
Detalhes
Descrição original do autor
Configures a language server so editor/agent tooling (diagnostics, go-to-definition, references, rename) works. Use when a project needs an LSP installed or wired, or a 'no LSP server configured' error appears.
Popularidade
- Estrelas no GitHub
- 70 mil
- Posição no ranking
- #1740
- Licença
- NOASSERTION
- Atualizada em
- 16/10/2026
Comentários
- …
Mais skills deste repositório
comment-checker
Ajuda seu agente a entender e responder a feedbacks de verificadores automáticos de comentários. É útil quando o agente precisa processar informações de ferramentas que revisam automaticamente o código ou o conteúdo.
code-yeongyu/oh-my-openagent
lcx-contribute-bug-fix
Ajuda seu agente a contribuir com correções de bugs para projetos relacionados ao LazyCodex. Ele cria issues ou pull requests para garantir a qualidade do código.
code-yeongyu/oh-my-openagent
lcx-doctor
Faz seu agente verificar a saúde da instalação do LazyCodex e Codex CLI. É útil quando o sistema se comporta de forma estranha após atualizações ou mudanças.
code-yeongyu/oh-my-openagent
lcx-report-bug
Ajuda seu agente a reportar bugs de forma detalhada em projetos do LazyCodex. Ele cria issues com informações úteis para os desenvolvedores corrigirem o problema.
code-yeongyu/oh-my-openagent
Skills parecidas
benchmark-optimization-loop
Faz seu agente melhorar a velocidade de algo de forma medida. Ele testa várias versões e escolhe a mais rápida que ainda funciona corretamente.
affaan-m/ECC
change-impact
Ajuda seu agente a analisar o impacto de mudanças no código antes de fazê-las. Ele compara o planejado com o real depois, cobrindo caminhos, dados, testes e documentação. É útil para mudanças arriscadas ou que afetam várias partes do sistema.
affaan-m/ECC
click-path-audit
Faz seu agente rastrear todos os botões e interações do usuário para achar bugs. Ele encontra problemas onde funções parecem funcionar sozinhas, mas falham juntas. Útil quando bugs persistem mesmo após depuração.
affaan-m/ECC