Overview

Configuration

Quick start#

{
  "version": 1,
  "exclude_authors": ["dependabot[bot]", "renovate[bot]"]
}

Prelint indexes markdown files in your repository automatically and reviews every pull request.

Configuration priority#

Settings merge from multiple sources. Higher-priority sources override lower ones:

  1. Built-in defaults
  2. Organization settings, set in the dashboard for all repositories
  3. Project settings, scoped to a project
  4. Repository settings, set in the dashboard for one repository
  5. prelint.json, highest priority, versioned with your code

Using prelint.json means configuration changes get reviewed in pull requests alongside code.

Schema reference#

Property Type Default Description
version number 1 Schema version. Always set to 1.
exclude_authors string[] ["dependabot[bot]", "renovate[bot]", "github-actions[bot]", "snyk-bot"] Pull request authors to skip. Supports GitHub bot format.
ignore_patterns string[] [] Glob patterns for files to ignore in reviews.
rules Rule[] [] Custom review rules.
context_files string[] [] Additional files to include as review context.
output.comments boolean true Post inline comments on the pull request diff.
output.check_run boolean true Create a GitHub check run with the review summary.

Ignore patterns#

Glob patterns match against the file path relative to the repository root. Prefix with ! to force-include a file that would otherwise be ignored.

{
  "ignore_patterns": [
    "docs/**",
    "**/*.test.ts",
    "migrations/**",
    "*.generated.ts",
    "!docs/api/**"
  ]
}

Always ignored, without configuration: *.lock and *-lock.*, vendor/** and node_modules/**, *.min.js and *.min.css, images (*.png, *.jpg, *.gif, *.svg, *.ico), and fonts (*.woff, *.woff2, *.ttf, *.eot).

Custom rules#

Rules enforce project-specific requirements beyond what specs cover. Each rule has a name and a description the review engine evaluates every diff against.

{
  "rules": [
    {
      "name": "No direct database queries in handlers",
      "description": "All database access must go through the repository layer. Handler functions should not import or use database clients directly."
    },
    {
      "name": "Feature flags for new endpoints",
      "description": "New API endpoints must be wrapped in a feature flag. Use the featureFlags.isEnabled() check before executing endpoint logic."
    }
  ]
}

Context files#

Context files add information the engine should know without being formal specs:

  • API documentation the code should match
  • Database schemas that inform business logic
  • Design system guidelines for frontend code
  • Third-party integration docs that constrain implementation
{
  "context_files": [
    "docs/api-reference.md",
    "docs/database-schema.md"
  ]
}

Updated