Format commit messages using the Conventional Commits specification. Use when creating commits, writing commit messages, or when the user mentions commits, git commits, or commit messages. Ensures commits follow the standard format for automated tooling, changelog generation, and semantic versioning.
Format all commit messages according to the Conventional Commits specification. This enables automated changelog generation, semantic versioning, and better commit history.
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
feat: - A new feature (correlates with MINOR in Semantic Versioning)fix: - A bug fix (correlates with PATCH in Semantic Versioning)docs:style: - Code style changes (formatting, missing semicolons, etc.)refactor: - Code refactoring without bug fixes or new featuresperf: - Performance improvementstest: - Adding or updating testsbuild: - Build system or external dependencies changesci: - CI/CD configuration changeschore: - Other changes that don't modify src or test filesrevert: - Reverts a previous commitAn optional scope provides additional contextual information about the section of the codebase:
feat(parser): add ability to parse arrays
fix(auth): resolve token expiration issue
docs(readme): update installation instructions
Breaking changes can be indicated in two ways:
! in the type/scopefeat!: send an email to the customer when a product is shipped
feat(api)!: send an email to the customer when a product is shipped