Haskell language server (HLS) for Claude Code, providing code intelligence, diagnostics and navigation for Haskell projects.
.hs, .lhs, .cabal
The plugin only registers the server with Claude Code; haskell-language-server-wrapper must be on your PATH. The wrapper picks the HLS build matching the GHC version your project uses.
ghcup install hlsbrew install haskell-language-server# Arch Linux
sudo pacman -S haskell-language-server
# Nix
nix profile install nixpkgs#haskell-language-serverVerify the install with haskell-language-server-wrapper --version.
HLS discovers how to build your project through a cradle: cabal.project, stack.yaml or an hie.yaml are detected automatically. The first request in a project can be slow while HLS builds the cradle and loads dependencies, which is why this plugin sets a 120s startup timeout. The project should build with cabal build or stack build before you rely on HLS.
- Slow first request. HLS loads your project and its dependencies on startup. The first one or two LSP calls in a session can fail with
server is starting; retrying a moment later succeeds. - The project must build. HLS needs a working cradle (
cabal build/stack buildsucceeding at least once), otherwise it reports cradle errors instead of code intelligence.
/plugin install haskell-lsp --marketplace LaurentRDC/haskell-lsp