Command Palette

Search for a command to run...

Git Commit Message Linter

Analyze your Git commit messages against Conventional Commits standards and get automatic fixes.

Commit Message
Paste your commit message below to validate it against Conventional Commits standards.
Quick Templates
Start with a template
Conventional Commits Guide
Learn about the Conventional Commits specification

What is Conventional Commits?

Conventional Commits is a specification for adding human and machine-readable meaning to commit messages. It provides an easy set of rules for creating an explicit commit history, which makes it easier to write automated tools on top of.

Format Structure

type(scope): description

[optional body]

[optional footer(s)]

type: The kind of change (required)

scope: What section of codebase (optional)

description: Brief summary (required)

body: Detailed explanation (optional)

footer: Breaking changes, issue refs (optional)

Examples

Simple
feat: add user authentication
With Scope
fix(api): resolve timeout issue
Breaking Change
feat(auth)!: change login endpoint

BREAKING CHANGE: endpoint changed from /login to /auth/login
With Body & Footer
fix(database): prevent connection leak

Added proper connection pool cleanup.
Improved error handling for timeout cases.

Closes #456

Commit Types

featA new feature
🐛fixA bug fix
📚docsDocumentation only changes
💎styleChanges that do not affect the meaning of the code
♻️refactorA code change that neither fixes a bug nor adds a feature
perfA code change that improves performance
testAdding missing tests or correcting existing tests
🏗️buildChanges that affect the build system or external dependencies
👷ciChanges to CI configuration files and scripts
🔧choreOther changes that don't modify src or test files
revertReverts a previous commit

Benefits

  • Automatically generate CHANGELOGs
  • Automatically determine semantic version bump
  • Communicate nature of changes to teammates
  • Trigger build and publish processes
  • Make it easier for people to contribute

Best Practices

  • Keep the subject line under 100 characters
  • Use lowercase for type and description
  • Don't end the subject line with a period
  • Use imperative mood ("add" not "added")
  • Add blank line between subject and body
  • Wrap body at 72-100 characters
  • Use body to explain what and why vs. how