Getting Started
Static analysis and health checks for dbt projects.
Find missing docs, missing tests, schema drift risks, stale models, DAG maintainability issues, and CI quality gate failures.
| No Python | No warehouse credentials | Works with dbt Core + dbt Fusion |
|---|---|---|
| Fast local checks | Safe in CI | Manifest-aware when available |
Quick start
npx dbt-doctor@latest
Why Node instead of Python?
- dbt Doctor was built on top of the
react-doctorarchitecture. npxgives a very low-friction install/run path.- Most developers already have Node installed, so onboarding is faster.
Next actions
- Pick your config style: Configuration
- Pick your policy level: Presets
- Wire it into CI: CI Integration
- Browse rule catalog: Rules
- Understand scoring: Score Modes
- Coming from SQLFluff: Migrating from SQLFluff
60-second setup
1. Add a minimal config
Create .dbt-doctor in repo root:
fail_on=error
preset is optional. If omitted, dbt Doctor uses default.
2. Run lint
npx dbt-doctor@latest
3. Add manifest path (recommended)
manifest_path=target/manifest.json
If manifest is missing, dbt Doctor still runs file-based rules and warns once.
Choose your rollout
Local developer mode
fail_on=none
PR gate mode
preset=strict
fail_on=warning
diff=main
manifest_path=target/manifest.json
Full governance mode
preset=enterprise
fail_on=warning
score_mode=files
manifest_path=target/manifest.json
What you get
- SQL linting path compatible with SQLFluff workflows
- dbt graph and manifest checks without requiring
dbt build - Rule-level controls for severity, ignores, and options
- Preset-based rollout from quiet to strict