Skip to content

Conversation

@pafuent
Copy link
Contributor

@pafuent pafuent commented Nov 7, 2025

Closes godotengine/godot-proposals#464

Now Godot can be started as a headless LSP server that reads from stdin and writes to stdout with the --lsp CLI parameter.

Bellow is an example of helix using the stdio LSP

Helix_Godot_LSP_stdio

helix configuration to get it working helix/languages.toml

[language-server.godot]
command = "<YOUR GODOT BINARY FULL PATH>"
args = [ "--lsp" ]

@HolonProduction
Copy link
Member

Have you test driven this for actual dev work for longer time on a real project?

This needs very careful testing whether running two editor instances on the same project leads to errors regarding interaction with the .godot folder. Are we aware of any such standing issues?

Also this might break some updating functionality in the editor instance which is not used for the LSP, since the LSP force reloads some scripts when the external editor saves them.

@pafuent pafuent force-pushed the lsp_stdio_mode branch 3 times, most recently from 62a047a to b1ae427 Compare November 7, 2025 17:41
Closes godotengine/godot-proposals#464

Now Godot can be started as a headless LSP server that reads from
stdin and writes to stdout with the `--lsp` CLI parameter.
@mk56-spn
Copy link

mk56-spn commented Nov 7, 2025

Have you test driven this for actual dev work for longer time on a real project?

This needs very careful testing whether running two editor instances on the same project leads to errors regarding interaction with the .godot folder. Are we aware of any such standing issues?

Also this might break some updating functionality in the editor instance which is not used for the LSP, since the LSP force reloads some scripts when the external editor saves them.

i cant officially confirm this but as someone who regularly uses jetbrains rider to launch godot ( it has a button for that ) and acidentally launches say 2 or 3 copies if i dont check if one is open, it doesnt seem to cause any issues, beyond the annoying waffly message about " do you wanna reload changes from disk" when you edit from one editor and then check another

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add the ability to use stdio for LSP to support some editors (Qt Creator, Kate, etc.)

4 participants