New Persistent assistants now work in governed, cross-host teams. See what changed

Language servers

Which LSPs the built-in editor uses for diagnostics, completions, and navigation.

On this page

The built-in editor uses Language Server Protocol (LSP) servers for diagnostics, autocomplete, hover docs, go-to-definition, rename, and code actions. Glueprint discovers a set of language servers automatically when you open a folder.

Auto-discovered LSPs

When you open a folder, Glueprint scans for language servers it knows about and registers any it finds. Open Settings > Language servers to see what’s registered.

Each row shows:

  • The language it handles.
  • The LSP binary’s path (where it was found).
  • Its current state.

Languages supported today

Glueprint’s discovery registry currently covers:

  • Rust
  • TypeScript and JavaScript
  • Python
  • Go
  • PHP
  • C#

If the language you want isn’t in this list, the discovery registry doesn’t have a built-in rule for it yet. We’re adding more over time.

C# and csharp-ls

First install the .NET 10 SDK. Then install csharp-ls:

dotnet tool install --global csharp-ls

csharp-ls needs the .NET 10 SDK as its own runtime, independently of the target framework of the code you are editing. Use csharp-ls 0.24.0 or newer. Older builds send a configuration request during startup that Glueprint does not answer, so the server reports Running but never finishes loading your solution and answers nothing.

A solution file anywhere up the tree wins over a nearer project file. Rooting the server at a single project inside a multi-project solution gives you a server that starts and looks healthy but cannot resolve symbols outside that one project.

Language features cover .cs files only. Razor (.cshtml, .razor) and F# get syntax highlighting from the editor, not language features.

Settings > Diagnostics carries a .NET SDK row showing whether the SDK is installed, its version, and whether it meets the .NET 10 floor csharp-ls needs.

Re-detect

If you’ve installed an LSP after launching Glueprint, click Re-detect at the top of Settings > Language servers to rescan.

State

Each server has a state badge:

  • Running — responding.
  • Idle — registered, not currently handling requests.
  • Starting — launching now.
  • Missing — the binary couldn’t be found.
  • Crashed — the process died and Glueprint is showing you the last error.