Browse by type
Lint commit messages
Demo generated with svg-term-cli
cat docs/assets/commitlint.json | svg-term --out docs/public/assets/commitlint.svg --frame --profile=Seti --height=20 --width=80
commitizennpmconventional-changelogcommitlint checks if your commit messages meet the conventional commit format.
In general the pattern mostly looks like this:
type(scope?): subject #scope is optional; multiple scopes are supported (current delimiter options: "/", "\" and ",")
Real world examples can look like this:
chore: run tests on travis ci
fix(server): send cors headers
feat(blog): add comment section
Common types according to commitlint-config-conventional (based on the Angular convention) can be:
These can be modified by your own configuration.
npm install --save-dev @commitlint/cli.commitlintrc.commitlintrc.json.commitlintrc.yaml.commitlintrc.yml.commitlintrc.js.commitlintrc.cjs.commitlintrc.mjs.commitlintrc.ts.commitlintrc.cts.commitlintrc.mtscommitlint.config.jscommitlint.config.cjscommitlint.config.mjscommitlint.config.tscommitlint.config.ctscommitlint.config.mtscommitlint field in package.jsoncommitlint field in package.yamlA number of shared configurations are available to install and use with commitlint:
⚠️ If you want to publish your own shareable config then make sure it has a name aligning with the pattern
commitlint-config-emoji-logorcommitlint-config-your-config-name— then in extend all you have to write isemoji-logoryour-config-name.
Check the main website.
commitlintcommitlint is considered stable and is used in various projects as a development tool.
>= 22.12.0>= 2.13.2We're not a sponsored OSS project. Therefore we can't promise that we will release patch versions for older releases in a timely manner.\ If you are stuck on an older version and need a security patch we're happy if you can provide a PR.
Copyright by @marionebl. All commitlint packages are released under the MIT license.
commitlint is developed in a mono repository.
git clone git@github.com:conventional-changelog/commitlint.git
cd commitlint
pnpm install
pnpm build # run build tasks
pnpm start # rebuild on change (tsc -b --watch)
node @commitlint/cli/cli.js # run CLI
For more information on how to contribute please take a look at our contribution guide.
browse all types & interfaces →
$ claude mcp add commitlint \
-- python -m otcore.mcp_server <graph>