A language server and VS Code extension providing incremental checking, error recovery, and IDE features for the Rocq/Coq proof assistant.
Rocq LSP is a Language Server Protocol implementation for the Rocq/Coq proof assistant, providing IDE-like features such as incremental document checking, error recovery, and goal display. It solves the problem of inefficient, stop-and-go proof development by enabling continuous, interactive validation of formal documents.
Researchers, students, and developers working with the Rocq/Coq proof assistant who seek a modern, responsive editing environment with advanced tooling for formal verification and literate programming.
Developers choose Rocq LSP for its incremental checking engine (Flèche), which drastically reduces recompilation time, and its robust error recovery that allows working with partially correct proofs. Its support for multiple protocols and web-native design makes it a versatile platform for both interactive use and research.
Visual Studio Code Extension and Language Server Protocol for Rocq / Coq [maintainers=@gbdrt,@SkySkimmer,@tabareau]
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Rechecks only modified parts of documents continuously, avoiding full recompilation and speeding up proof editing, as demonstrated in the GIF showing real-time feedback.
Automatically admits incomplete lemmas and handles errors gracefully, allowing work with partially correct proofs without interruption, showcased in the error recovery animation.
Integrates with Markdown and LaTeX files (.mv, .lv, .v.tex), enabling seamless blending of formal code and documentation, with support for code blocks in literate documents.
Supports LSP, Petanque for low-latency AI interaction, and upcoming MCP for LLM context, offering flexibility for research and engineering applications beyond standard LSP.
Designed to run in-browser, facilitating integration with web-based environments like jsCoq, making it ideal for online proof development and educational tools.
The project is archived as of version 0.2.5 and is seeking new maintainers, leading to potential lack of support, bug fixes, and updates for future Rocq versions.
Requires opam, specific OCaml versions, and manual configuration on Windows with workarounds for unsigned installers, making setup non-trivial compared to simpler LSP servers.
Rendering can be slow with complex goals, necessitating workarounds like adjusting print settings, as admitted in the known problems section, which hampers responsiveness.
For some Rocq versions, users must install custom branches to fix upstream bugs, adding extra steps and potential instability beyond standard installations.