commit

Format git commit messages with Conventional Commits structure.

940|90|Updated Jan 12, 2026
One-click install
npx skills add https://github.com/iannuttall/ralph --skill commit-iannuttall
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: commit
Source: https://github.com/iannuttall/ralph/tree/main/skills/commit
Command: npx skills add https://github.com/iannuttall/ralph --skill commit-iannuttall

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill guides and formats git commit messages to follow the Conventional Commits standard, ensuring consistent, expressive history across projects.

Core Features & Use Cases

  • Structured Commit Message: Enforces a type, optional scope (kebab-case), and a clear subject for every commit.
  • Body & Trailers: Supports long-form message bodies and Git trailers to improve traceability and collaboration.
  • Use Case: When preparing a feature branch, generate a compliant commit message from your intent and notes, then apply it to your staged changes.

Quick Start

Use the commit skill after staging changes:

  • Stage changes: git add <files> or git add -A
  • Create commit: git commit -m "<type>(<scope>): <subject>"

Frequently Asked Questions about commit

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

FAQPage Schema
How do I format a conventional commit message with a type, scope, and subject?

To format a conventional commit, structure your message as type(scope): subject. The type defines the change category, the scope is an optional kebab-case module identifier, and the subject is a concise summary of the changes.

What is the correct way to add a body and trailers to a git commit message?

Git commit messages support an optional long-form body and trailers after the subject line. The body provides detailed context, while Git trailers improve traceability and collaboration by appending structured metadata like breaking changes.

How do I indicate breaking changes in a conventional commit?

Breaking changes in a conventional commit are indicated using specific trailers or a dedicated notation within the message structure. This ensures the breaking change is explicitly tracked in the navigable commit history.

Are conventional commits suitable for small to medium code changes in everyday development?

Yes, conventional commits are ideal for everyday development workflows with small to medium scoped changes. They enforce a clean, structured, and navigable history across projects without adding heavy overhead to the process.

Does a conventional commit scope need to be formatted in a specific way?

Yes, the optional scope in a conventional commit must be formatted in kebab-case. This enforces a consistent, machine-readable naming convention for the affected module or component across the project history.

What are the limitations of using a basic conventional commit formatting approach?

This basic conventional commit approach handles standard types, kebab-case scopes, and optional bodies but may lack advanced reasoning for highly complex, multi-faceted changes that require deeper semantic analysis.