Supported Tools
CodeRabbit supports various linters and security analysis tools to improve the code review process. The output of these tools is used to enhance the feedback provided by CodeRabbit, making it possible to provide 1-click fixes for common issues.
Enabling/Disabling Tools
You can enable or disable tools by setting reviews.tools.<tool>.enabled
in your project's .coderabbit.yaml
file or setting the "Review → Tools → Tool → Enabled" field in CodeRabbit's settings page.
Customizing Tools
CodeRabbit supports customizing the strictness of tools by setting reviews.profile
in your project's .coderabbit.yaml
file or setting the "Review → Profile" field in CodeRabbit's settings page. The following profiles are available:
Chill
- Yields less feedback, that may be considered lenient.Assertive
- Yields more feedback, that may be considered nit-picky.
Apart from the overall profile, you can also configure each tool by providing a path to a configuration file (specific to the tool) in your project. This would allow you to further customize the tool's behavior, by enabling/disabling specific rules, setting rule severity, etc.
Checking Tool Output
When a tool is enabled, CodeRabbit will run it on your change request and attach the output under "Review details" comment in the change request. The output will be displayed in a structured format, with information on the file, line number, and the issue detected. For example:
Ruff
fib.py
21-21: f-string without any placeholders
Remove extraneous f prefix
(F541)
Supported Tools
Technology | Tools |
---|---|
All | Gitleaks |
CircleCi | CircleCi |
CloudFormation | Checkov |
Cppcheck | Cppcheck |
CSS | Biome |
Docker | Hadolint, Checkov |
GitHub Actions | Actionlint |
Go | golangci-lint |
Helm | Checkov |
Javascript | Biome |
JSON, JSONC | Biome |
JSX | Biome |
Kotlin | Detekt |
Kubernetes | Checkov |
Markdown | Markdownlint, LanguageTool |
PHP | PHPStan |
Plaintext | LanguageTool |
Java | PMD |
Protobuf | Buf |
Python | Ruff |
Regal | Regal |
Ruby | Rubocop |
Semgrep | Semgrep |
Shell (sh, bash, ksh, dash) | ShellCheck |
Swift | SwiftLint |
Terraform | Checkov |
TSX | Biome |
Typescript | Biome |
YAML | YamlLint |