Files
React Doctor runs on changed files with these extensions:.jsx.tsx.ts.js.mjs.cjs
.jsx or .tsx) or when a nearby package.json declares a React project dependency such as react, react-dom, react-native, preact, or @preact/compat.
Configuration
React Doctor is enabled by default. You can disable it in.coderabbit.yaml:
.coderabbit.yaml
doctor.config.jsondoctor.config.jsoncreact-doctor.config.json
reactDoctor configuration from package.json. If a package uses package.json configuration without a supported static config file, CodeRabbit writes a temporary doctor.config.json beside that package.json using the selected review profile.
Profiles
Chill: Reports security findings and definite bug findings. Performance, accessibility, maintainability, design-tagged, and test-noise-tagged rules are disabled.Assertive: Reports security and bug findings, plus performance and accessibility findings at their React Doctor default severity. Maintainability and test-noise-tagged rules remain disabled.
react-doctor/no-vulnerable-react-server-componentsreact-doctor/no-barrel-importreact-doctor/nextjs-no-img-elementreact-doctor/js-combine-iterationsreact-doctor/prefer-module-scope-pure-functionreact-doctor/prefer-module-scope-static-valuereact-doctor/only-export-componentsreact-doctor/no-giant-componentreact-doctor/no-multi-comp
Security policy and restrictions
React Doctor runs inside the CodeRabbit sandbox with the sandbox-installedreact-doctor package. CodeRabbit does not install project npm packages or run repository-supplied React Doctor plugins.
Executable React Doctor config files are not supported:
doctor.config.tsdoctor.config.jsdoctor.config.mjsdoctor.config.cjsdoctor.config.mtsdoctor.config.cts
package.json reactDoctor configuration declares a non-empty plugins array. React Doctor dead-code analysis is disabled in CodeRabbit runs.
When we skip React Doctor
CodeRabbit skips React Doctor when:- React Doctor is disabled in CodeRabbit settings.
- The pull request does not change a supported file type.
- The changed files do not include JSX and no nearby
package.jsondeclares a React project dependency. - React Doctor is already running in GitHub workflows.
- The repository contains an executable React Doctor config file.
- A React Doctor config declares non-empty plugins.
What’s next
ESLint
Review how CodeRabbit runs ESLint for JavaScript, TypeScript, and framework files.
Oxlint
Learn how CodeRabbit runs Oxlint for JavaScript and TypeScript projects.
All supported tools
Browse the complete list of linters, security analyzers, and CI/CD integrations available in CodeRabbit.