Skip to main content
markdownlint-cli2 is a linter for Markdown. CodeRabbit runs markdownlint-cli2 v0.23.3.

Files

Markdownlint will run on files with the following extensions:
  • .md
  • .markdown

Configuration

boolean
default:true
Enable markdownlint
.coderabbit.yaml
CodeRabbit checks the repository root for the following configuration files. If it finds one, markdownlint-cli2 discovers and loads it, and CodeRabbit does not supply profile defaults:
  • .markdownlint.jsonc
  • .markdownlint.json
  • .markdownlint.yaml
  • .markdownlint.yml
  • .markdownlint-cli2.yaml
CodeRabbit does not modify your configuration. Autofix is disabled during reviews, even if your configuration enables it. markdownlint-cli2 also loads .markdownlint-cli2.jsonc, .markdownlint-cli2.cjs, and .markdownlint-cli2.mjs files, but CodeRabbit does not look for them, so the profile defaults below still apply to any rule those files do not set.

Profile defaults

If the repository root contains none of the configuration files named above, CodeRabbit supplies default settings based on the selected profile:
  • Chill disables ordered-list prefix (MD029) and first-line heading (MD041) checks.
  • Assertive enables those checks.
  • Both profiles disable fenced-code language (MD040) and list-marker spacing (MD030) checks, and only check duplicate headings (MD024) among siblings. A repository configuration can enable the fenced-code language check.

When we skip markdownlint

CodeRabbit will skip running markdownlint when:
  • markdownlint is disabled in your CodeRabbit configuration.
  • No existing files in the pull request match the supported extensions.
  • markdownlint is already running in GitHub Actions, GitLab CI, CircleCI, or Azure Pipelines.

Ignored rules

The following markdownlint rules are automatically ignored, even when your repository configuration enables them:
  • MD004 - ul-style (disallows mixing of list markers)
  • MD007 - ul-indent (unordered list indentation)
  • MD009 - no-trailing-spaces (disallows trailing whitespace)
  • MD010 - no-hard-tabs (hard tabs)
  • MD012 - no-multiple-blanks (disallows multiple blank lines)
  • MD013 - line-length (enforces maximum line length)
  • MD025 - single-title, single-h1 (ensures only one H1 heading per file)
  • MD026 - no-trailing-punctuation (disallows trailing punctuation in headings)
  • MD032 - blanks-around-lists (disallows multiple blank lines around lists)
  • MD033 - no-inline-html (disallows inline HTML inside Markdown)
  • MD034 - no-bare-urls (disallows bare URLs)
  • MD036 - no-emphasis-as-heading (disallows emphasis instead of headings)
  • MD049 - emphasis-style (enforces consistent italic syntax)
  • MD050 - strong-style (enforces consistent bold syntax)
  • MD060 - table-column-style (enforces table column spacing)