You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[BUG] Custom LSP servers always send languageId: 'plaintext', causing servers like Godot LSP to fail #23663
When using a custom LSP server (e.g., godot-lsp-bridge for GDScript), OpenCode always sends languageId: "plaintext" in the textDocument/didOpen notification, regardless of the file extension configured in lsp.extensions.
This causes language servers that rely on languageId (like Godot's LSP server) to not send diagnostics, because they only recognize their specific language ID (e.g., gdscript).
OpenCode uses a hardcoded LANGUAGE_EXTENSIONS mapping table for built-in LSP servers. For any extension not in this table (including custom LSP extensions like .gd), it falls back to "plaintext".
The lsp.*.extensions configuration is only used to match which LSP server to start, but is not used to determine the languageId sent to the server.
Activity
[-]Custom LSP servers always send languageId: 'plaintext', causing servers like Godot LSP to fail[/-][+][BUG] Custom LSP servers always send languageId: 'plaintext', causing servers like Godot LSP to fail[/+]github-actions commentedon Jul 7, 2026
To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.