packages/omo-codex/plugin/skills/lsp-setup/references/elixir/README.md
elixir-ls — elixir-ls.ex .exshttps://github.com/elixir-lsp/elixir-lsElixirLS needs Erlang/OTP and Elixir installed first. Build the release from
https://github.com/elixir-lsp/elixir-ls and put the elixir-ls launcher script on PATH.
brew install elixir-ls (Homebrew provides the launcher), or build the release manuallymix deps.get && mix compile && mix elixir_ls.release2 -o release, then add release/ to PATHrelease dir (use the .bat launcher) to PATHConfirm it resolves:
command -v elixir-ls
Builtin — usually NO config needed (auto-resolved by extension). Configure only to set priority, init options, override extensions, or disable. Same JSON shape in .codex/lsp-client.json (Codex) AND .opencode/lsp.json (OpenCode/omo):
{ "lsp": { "elixir-ls": { "priority": 100 } } }
For builtin ids in a PROJECT config, command is supplied automatically — only set priority/initialization/extensions/disabled/env. A fully custom (non-builtin) server with its own command must go in the USER config (~/.codex/lsp-client.json).
None commonly required.
lexical — fast, modern alternative LSP.nextls --stdio — from the elixir-tools project.elixir-ls must be on PATH; reopen the shell after install.asdf install, run asdf reshim elixir so the elixir-ls shim resolves, and ensure the Erlang/Elixir versions match the build.bun ../../scripts/verify-lsp.ts path/to/file.ex