Pular para o conteúdo
Skillpedia
Código em geral70 mil · #1740

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

https://github.com/code-yeongyu/oh-my-openagent/blob/dev/packages/shared-skills/skills/lsp-setup/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/code-yeongyu/oh-my-openagent/blob/dev/packages/shared-skills/skills/lsp-setup/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
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-setup

Ou 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.md
Conteú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 herda command automaticamente — você apenas substitui extensions / 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 por LSP_TOOLS_MCP_USER_CONFIG), onde command + extensions sã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.

repo: code-yeongyu/oh-my-openagent

Popularidade

Estrelas no GitHub
70 mil
Posição no ranking
#1740
Licença
NOASSERTION
Atualizada em
16/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas