conventional-commit

Create conventional commit messages following best conventions. Use when committing code changes, writing commit messages, or formatting git history. Follows conventional commits specification.

By marcelorodrigo · 940 installs

npx skills add marcelorodrigo/agent-skills --skill conventional-commit

Source repository · Upstream listing

Conventional Commit Messages Follow these conventions when creating commits. Prerequisites Before committing, ensure you're working on a feature branch, not the main branch. If you're on main or master , create a new branch first: Branch naming should follow the pattern: <type /<short description where type matches the commit type (e.g., feat/add user auth , fix/null pointer error , refactor/extract validation ). Format The header is required. Scope is optional. All lines must stay under 100 characters. Commit Types Type Purpose build Build system or CI changes chore Routine maintenance tasks ci Continuous integration configuration deps Dependency updates docs Documentation changes feat New feature fix Bug fix perf Performance improvement refactor Code refactoring (no behavior change) revert Revert a previous commit style Code style and formatting test Tests added, updated or improved Subject Line Rules Use imperative, present tense: "add feature" not "added feature" Do not capitalize the first letter No period at the end Maximum 70 characters Body Guidelines Explain what and why , not how Use imperative mood and present tense Include motivation for the change Contrast with previous behavior when relevant Conventional Commits The commit contains the following structural elements, to communicate intent to the consumers of your library: fix: a commit of the type fix patches a bug in your codebase (this correlates with PATCH in Semantic Versioning). feat: a commit of the type feat introduces a new feature to the codebase (this correlates with MINOR in Semantic Versioning). BREAKING CHANGE: a commit that has a footer BREAKING CHANGE:, or appends a ! after the type/scope, introduces a breaking API change (correlating with MAJOR in Semantic Versioning). A BREAKING CHANGE can be part of commits of any type. types other than fix: and feat: are allowed, for example @commitlint/config conventional (based on the Angular convention) recommends build:, chore:, ci:, docs:, style:, refactor:, perf:, test:, and others. footers other than BREAKING CHANGE: <description may be provided and follow a convention similar to git trailer format. Examples Simple fix Feature with scope Refactor Breaking change Revert Format Principles Each commit should be a single, stable change Commits should be independently reviewable The repository should be in a working state after each commit References [Conventional Commits Specification](https://www.conventionalcommits.org/en/v1.0.0/ specification)