Visual Studio Code
VS Code is a good fit for Riot when you want a conventional GUI editor around a CLI-first workflow.
The right way to think about it is:
- VS Code is the editing surface
- Riot is the source of truth for build, check, format, fix, test, and run
That distinction prevents a lot of confusion.
Recommended setup
Section titled “Recommended setup”- open the workspace root
- install the extension from
editors/vscode-riot-ml - use the integrated terminal for Riot commands
The extension should help the editor understand the Riot workspace. It should not replace the Riot CLI.
What the editor should do well
Section titled “What the editor should do well”Once the setup is healthy, VS Code should make these loops cheap:
riot checkriot fmtriot fixriot buildriot test
That usually means:
- tasks or command palette entries for common commands
- diagnostics that reflect Riot’s own model
- formatting wired to Riot’s formatter path
Common failure modes
Section titled “Common failure modes”Most bad VS Code experiences with toolchains come from one of these:
- opening the wrong directory
- relying on generic OCaml assumptions instead of Riot workspace semantics
- using editor-specific formatting or diagnostics that disagree with Riot
When that happens, simplify. Use the integrated terminal and get the CLI path correct first, then add editor integrations back on top.