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
LSP workspaceSymbol is always send with empty query #23075
Hello. I've found this when trying to work with clangd. It can't search symbols using workspaceSymbol function and always returns something irrelevant.
In logs of clangd a json's for requests are always send with empty query and it's clearly written in code:
I can confirm this bug. Based on my testing with a clangd proxy, I would like to supplement the technical analysis. Please fix these bugs in the following way:
Update the Tool Schema: Remove filePath, line, and character from the "required" list for the workspaceSymbol operation. Instead, make a "query" (string) parameter mandatory.
Pass the Argument: Ensure that the actual query string provided by the model is passed into the lsp.workspaceSymbol(query) call instead of the current hardcoded empty string.
Align with LSP Specification: Ensure the tool follows the standard WorkspaceSymbolParams as defined in the official Microsoft LSP 3.17 Specification.
Since workspace/symbol is a global search by design, it should not be architecturally tied to a specific file path or coordinates. This adjustment will allow the LLM to perform proper project-wide discovery, which is critical for identifying symbols definitions across the entire repo / project.
Reacted by Andrey Skipin, vovaRVS, AKrasheninnikov, Pavel Vorozheykin, Pugach Aleksandr, Serg2DFX, Oganesyan Levon and Alexander Minyaev
Activity
VladD2 commentedon Apr 17, 2026
I can confirm this bug. Based on my testing with a clangd proxy, I would like to supplement the technical analysis. Please fix these bugs in the following way:
Update the Tool Schema: Remove filePath, line, and character from the "required" list for the workspaceSymbol operation. Instead, make a "query" (string) parameter mandatory.
Pass the Argument: Ensure that the actual query string provided by the model is passed into the lsp.workspaceSymbol(query) call instead of the current hardcoded empty string.
Align with LSP Specification: Ensure the tool follows the standard WorkspaceSymbolParams as defined in the official Microsoft LSP 3.17 Specification.
Since workspace/symbol is a global search by design, it should not be architecturally tied to a specific file path or coordinates. This adjustment will allow the LLM to perform proper project-wide discovery, which is critical for identifying symbols definitions across the entire repo / project.
VladD2 commentedon Apr 17, 2026
Related issue - #3116