Plugins
Qlty integrates with linters, auto-formatters, security scanners, and other static analysis tools as plugins.
Each plugin consists of two components:
- A plugin definition in a TOML configuration file
- A results parser implemented in Rust
Here is a simplified example plugin definition for Ruff:
plugin.toml for ruff
Gitleaks supports outputting results in the SARIF standard format, so a custom results parser is not needed. For tools which do not support SARIF, a results parser is implemented within the Qlty CLI and referenced by name.
Auto-Formatters
Auto-formatters are a special type of plugin because they rewrite files rather than outputting findings. Therefore, they do not require results parsers.
Here is an example of a plugin definition for the shfmt auto-formatter:
plugin.toml for shfmt
Note the specification of output = "rewrite"
and driver_type = "formatter"
.