conventional-commits
Conventional Commits helps you write structured, semantic commit messages that enable automated versioning and changelog generation. It guides you through selecting commit types, adding optional scopes, and formatting descriptions in imperative mood, with support for breaking changes and footer tokens.
Conventional Commits generates standardized commit messages following the Conventional Commits specification.
AI-generated summary based on this skill's SKILL.md
Install
patricio0312rev/skills/conventional-commits
git clone https://github.com/patricio0312rev/skills
cp -r skills/foundation/conventional-commits ~/.claude/skills/conventional-commitsnpx skillfed install patricio0312rev/skills/conventional-commitsFrequently asked questions
AI-generated answers based on this skill's SKILL.md and metadata
How do I write a conventional commit message?
Conventional Commits provides a structured format for your commit messages. Start with a type (feat, fix, docs, style, refactor, perf, test, chore), optionally add a scope in parentheses, then a colon and space, followed by a description in imperative mood. For example: `feat(auth): add login validation` or `fix: resolve memory leak`. Include a body and footers for additional context when needed.
What is the conventional commits specification?
Conventional Commits is a specification for adding human and machine readable meaning to commit messages. It defines a standardized format using commit types (feat, fix, etc.), optional scopes, descriptions, and footers. This structure enables automated versioning, changelog generation, and better commit history readability. The format follows: `type(scope): description` with optional body and footer sections.
How do I format a breaking change in a commit message?
Conventional Commits marks breaking changes by adding an exclamation mark before the colon in the commit header, or by including a `BREAKING CHANGE:` footer. For example: `feat(api)!: redesign response structure` indicates a breaking change. Alternatively, add `BREAKING CHANGE: description of what broke` in the commit footer for detailed explanation of the breaking change impact.
Can Conventional Commits enable automated versioning and changelog generation?
Yes, Conventional Commits enables automated versioning and changelog generation through tools like semantic-release. By parsing your standardized commit messages, these tools automatically determine version bumps (major, minor, patch), generate changelogs, and publish releases. This automation requires commitlint to validate commits and semantic-release configured in your project.
What commit types does Conventional Commits define?
Conventional Commits defines several standard types: `feat` for new features, `fix` for bug fixes, `docs` for documentation changes, `style` for code style changes, `refactor` for code refactoring, `perf` for performance improvements, `test` for test additions, and `chore` for build or dependency updates. You can extend these with custom types based on your project needs.
How do I set up commitlint to validate conventional commits?
Conventional Commits works with commitlint to enforce message format validation. Install commitlint and configure a `.commitlintrc` file specifying the conventional config. Add a git hook (via husky) to run commitlint on commit messages. This ensures all commits follow the Conventional Commits specification before they're accepted into your repository.
SKILL.md
rendered from the published skill — quoted content, verbatim
Conventional Commits
Write standardized, semantic commit messages that enable automated versioning and changelog generation.
Core Workflow
- Analyze changes: Review staged files and modifications
- Determine type: Select appropriate commit type (feat, fix, etc.)
- Identify scope: Optional component/module affected
- Write description: Concise summary in imperative mood
- Add body: Optional detailed explanation
- Include footer: Breaking changes, issue references
Commit Message Format
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
Commit Types
| Type | Description | Semver | Example |
|---|---|---|---|
feat |
New feature | MINOR | feat: add user authentication |
fix |
Bug fix | PATCH | fix: resolve login redirect loop |
docs |
Documentation only | - | `docs: |
(truncated - see the full file via the links below)
Read as markdown · JSON record · Browse the source repository
File tree — 1 file
foundation/conventional-commits/SKILL.md