packages/omo-codex/plugin/skills/lsp-setup/references/julia/README.md
julials — julia --startup-file=no --history-file=no -e using LanguageServer; runserver().jljulia -e 'using Pkg; Pkg.add("LanguageServer")'The PATH executable is julia; LanguageServer.jl is launched through the -e snippet, not as its own binary.
Install Julia (juliaup recommended), then add the LanguageServer package:
brew install juliaup && juliaup add releasecurl -fsSL https://install.julialang.org | sh (installs juliaup)winget install julia -s msstore (installs juliaup)Then add the package — ideally into a shared @lsp environment so it is not tied to one project:
julia --project=@lsp -e 'using Pkg; Pkg.add("LanguageServer")'
Confirm Julia resolves (the LSP binary IS julia):
command -v julia
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": { "julials": { "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. To pin which environment hosts LanguageServer.jl, set JULIA_PROJECT (or JULIA_DEPOT_PATH) via env:
{ "lsp": { "julials": { "env": { "JULIA_PROJECT": "@lsp" } } } }
julia on PATH (not a julials binary); reopen shell after juliaup install.LanguageServer must be installed in the environment the server runs in (e.g. @lsp); add it there and set JULIA_PROJECT.bun ../../scripts/verify-lsp.ts path/to/file.jl