Skip to content

Language servers (LSP)

gdc can use language servers — the same engines that power editor features like go-to-definition and error highlighting — to give the agent precise, editor-grade information about your code. This helps the agent navigate and reason about a codebase more accurately than text search alone.

What this adds

With a language server available for your project's language, the agent can draw on signals such as:

  • Definitions and references — where a symbol is defined and everywhere it's used.
  • Hover information — types and documentation for a symbol.
  • Diagnostics — the warnings and errors the language server reports, as feedback the agent can act on.

These act as passive, high-accuracy inputs: the agent uses them to understand your code, on top of reading and searching files directly.

Supported languages

Any language with a standard language server can be used. Common ones include Rust, TypeScript/JavaScript, Go, and Python. You'll need the corresponding language server installed and available on your system (for example, rust-analyzer for Rust).

How it fits in

Language-server signals complement the built-in tools:

  • Read / Grep / Glob answer "what does the text say and where is it".
  • Language server answers "what does this symbol mean, where is it defined, and where is it used" — with compiler-grade accuracy.

You don't invoke these directly; the agent uses them as it works, and their diagnostics surface naturally when relevant to your task.