Microsoft's C++ language server for GitHub Copilot CLI can now generate the compilation database it needs for an MSBuild project without first finding a separate setup skill. Microsoft says the server bundles its compile-commands extractor and invokes it when the language server starts as a project opens. That removes a manual preparation step for this build system, while leaving the language server itself in preview and dependent on a Copilot subscription.
Why does Copilot CLI need a compilation database?
C++ projects can be built with different configurations and compiler flags. A language server needs to know how each source file is compiled to offer useful semantic features such as go-to-definition, finding references and diagnostics. A compile_commands.json file records those commands. Without it, the language server may have less information about the project's actual build, even when it can read the source files.
GitHub's November 10 changelog says the extractor is now included with the Microsoft C++ language server and Copilot CLI invokes it on project open for MSBuild builds. The earlier workflow required a developer or the agent to provide a compilation database or discover and run a setup skill. The new path is intended to make that generation deterministic and avoid spending setup time and agent tokens on a separate discovery step.
What still needs to be installed?
This is not an automatic feature of every Copilot surface. Microsoft's repository describes the language server as a Copilot CLI plugin. The quick start calls for an active GitHub Copilot subscription, Copilot CLI with session-directory support, npm, installing the cpp-language-server plugin and accepting its EULA before using it. The changelog says to install the plugin and accept the EULA; the repository's current prerequisite list also notes that session-directory support was tested with prerelease 1.0.106-5, a version detail that may move as the CLI changes.
After installation, the server needs to start in the project context. Microsoft's instructions say to launch Copilot CLI from the project directory and use its /lsp show command to confirm that the C++ server is running. Developers can then prompt the agent to use LSP tools when they want it to rely on symbol-aware code navigation. The auto-generated compilation database improves project context; it does not itself prove that an agent's code changes compile or behave correctly.
Is setup automatic for CMake and custom builds too?
The new automatic extractor callout is specifically for MSBuild projects. GitHub's changelog says CMake users can provide a compile_commands.json or use the setup skill from the earlier release, while custom build systems can use a project-specific extractor skill or provide their own database. Teams should not assume the MSBuild shortcut applies to every C++ build layout or nonstandard toolchain.
Microsoft labels the C++ language server a preview, so its setup and behavior can change. For teams already using Copilot CLI on a vcxproj repository, the update removes a configuration task before code intelligence can help. For other projects, the question remains how to generate and maintain an accurate compilation database that reflects the commands the project actually uses.
What changed in GitHub Copilot code review's API and review overview?
This release is a focused developer-workflow improvement: less manual C++ project setup inside Copilot CLI for one common Windows build system. The remaining work is concrete—install the preview plugin, accept its terms, meet the subscription and runtime prerequisites, and check how it handles the repository's build.
