Conventional Commits

Validate commit messages against release-please compatible Conventional Commits formatting.

Updated May 3, 2026
One-click install
npx skills add https://github.com/tykhoncode/dicekit --skill conventional-commits-tykhoncode
Or copy as Structured Prompt for Agentโ–ผ
Please help me install this Agent Skill.
Skill: Conventional Commits
Source: https://github.com/tykhoncode/dicekit/tree/main/.claude/skills/conventional-commits
Command: npx skills add https://github.com/tykhoncode/dicekit --skill conventional-commits-tykhoncode

SYSTEM DOCUMENTATION & REQUIREMENTS

๐Ÿ’ก This Skill includes references (resource) components.

What problem does it solve?

It prevents inconsistent commit titles and release-triggering mistakes by enforcing a strict Conventional Commits format that matches the project's release automation rules.

Core Features & Use Cases

  • Standardized commit message format: Ensures every commit follows the required structure with consistent type and description casing.
  • Release-please compatible semantics: Guides authors to use the correct type and breaking-change conventions (! and BREAKING CHANGE:) so version bumps happen as intended.
  • Project-aware emoji guidance: Helps choose appropriate (cosmetic) gitmoji prefixes while keeping the release behavior determined only by the type.

Use Case: When preparing a PR that will update user-facing functionality, you need the commit message to reliably trigger a MINOR release; this Skill helps you produce a correct feat: title (and breaking-change markers when needed) without accidental formatting violations.

Quick Start

Use the Conventional Commits skill to validate your next commit message for lowercase type, a lowercase-starting description, correct title length, and proper breaking-change signaling.

Frequently Asked Questions about Conventional Commits

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I format commit messages to trigger automated semantic versioning with release-please?โ–ผ

To trigger automated semantic versioning with release-please, format commit messages using strict Conventional Commits with a lowercase type, imperative mood, and correct breaking-change markers like `!` or `BREAKING CHANGE:` footers to ensure predictable version bumps.

What is the correct structure for conventional commit messages in release automation?โ–ผ

The correct structure for conventional commit messages requires a lowercase type, a lowercase-starting description without trailing periods, an optional leading emoji, and imperative mood. This structure ensures automated release-please versioning behaves predictably without accidental formatting violations.

How do I signal a breaking change in conventional commits for a MINOR or MAJOR release?โ–ผ

To signal a breaking change for a MAJOR release in conventional commits, append a `!` after the type or add a `BREAKING CHANGE:` footer. Using a `feat:` type without breaking markers triggers a MINOR release, while `fix:` triggers a PATCH.

Can I use gitmoji prefixes in commit messages without affecting release-please versioning?โ–ผ

Yes, you can use one optional leading gitmoji prefix in commit messages as a cosmetic enhancement. Release-please versioning behavior remains determined solely by the conventional commit type, ensuring the emoji does not interfere with automated semantic version bumps.

How do I validate existing commit messages for conventional commit formatting rules?โ–ผ

To validate existing commit messages, check them against release-please compatible formatting rules, ensuring they use lowercase types, imperative mood, no trailing periods in titles, and proper breaking-change markers to prevent release-triggering mistakes.

What are the limitations of using conventional commit formatting for release automation?โ–ผ

A limitation of conventional commit formatting is that strict adherence is mandatory; any formatting violation, such as an uppercase type or trailing period, can prevent release-please from correctly parsing the commit and triggering the intended semantic version bump.