Files
Squawk runs on changed SQL migration files that match these patterns:**/migrations/*.sql**/migrations/**/*.sql**/migration/**/*.sql**/db/migrate/**/*.sql**/db/migration/**/*.sql**/db/migrations/**/*.sql
Configuration
Squawk is enabled by default. Enable or disable it with.coderabbit.yaml or the CodeRabbit web UI:
- .coderabbit.yaml
- Web UI
.coderabbit.yaml
.squawk.toml file and uses it when present. See the Squawk CLI documentation for supported options, including rule inclusion and exclusion, PostgreSQL version selection, and path exclusions.
CodeRabbit assumes each migration file runs inside a transaction. Add -- squawk-disable-assume-in-transaction to a migration file when your migration runner does not wrap that file in a transaction.
Profile behavior
When the repository does not contain a.squawk.toml file, CodeRabbit generates a temporary configuration for the active review profile:
- Chill focuses on unsafe migrations, blocking locks, and breaking schema changes while excluding schema-style preferences.
- Assertive also enables schema preference rules such as using identity columns and timestamp types with time zones.
require-timeout-settings and syntax-error rules from review comments to reduce low-signal findings. This filtering also applies when the repository provides a .squawk.toml file.
When CodeRabbit skips Squawk
CodeRabbit skips Squawk when:- Squawk is disabled in CodeRabbit settings.
- The pull request does not change a SQL migration file matching the supported paths.
- Squawk is already running in GitHub workflows.
What’s next
Tool catalog
Browse all linters, security analyzers, and CI/CD integrations by category and technology.
Tools reference
Explore detailed specifications and configuration options for CodeRabbit tools.
SQLFluff
Lint general SQL files for correctness, structure, and style.