semantic-commit

Split large Git changes into Conventional Commits style messages.

2|Updated Feb 17, 2024
One-click install
npx skills add https://github.com/udus122/dotfiles --skill semantic-commit
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: semantic-commit
Source: https://github.com/udus122/dotfiles/tree/main/.claude/skills/semantic-commit
Command: npx skills add https://github.com/udus122/dotfiles --skill semantic-commit

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you split large code changes into semantically meaningful commits, enabling clearer history, easier reviews, and better adherence to Conventional Commits.

Core Features & Use Cases

  • Automatic change segmentation: detect logical boundaries to create focused commits for features, fixes, docs, and chores.
  • Semantic commit message generation: generate standardized, meaningful messages that reflect the intent of each change.
  • Project conventions awareness: detect existing conventions and tailor commit messages accordingly.

Quick Start

Run the semantic-commit skill on your current repository to split your latest changes into well-scoped commits and generate appropriate messages for each one.

Frequently Asked Questions about semantic-commit

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

FAQPage Schema
How do I split large Git changes into meaningful commits?

Splitting large changes into meaningful commits involves detecting logical boundaries across files and grouping related modifications by feature. This Skill automatically segments multi-file changes, classifies them by type (feature, fix, docs, chore), and generates Conventional Commits messages that reflect the intent of each grouped change, creating a clearer commit history.

What is Conventional Commits and why should I use it?

Conventional Commits is a standardized format for commit messages that enables automated changelog generation, semantic versioning, and clearer project history. It uses a structure like `type(scope): description` to classify changes. Using it across your team ensures consistency, makes history searchable, and improves code review clarity.

Can this work with multi-file, multi-feature codebases?

Yes, this Skill is designed for multi-file, multi-feature codebases. It detects change size thresholds (e.g., 5+ files or 100+ lines changed), groups modifications by feature boundaries, and generates focused commits for each logical unit, making it practical for large projects with complex change patterns.

How does automatic change segmentation detect feature boundaries?

Automatic change segmentation analyzes modified files and line-level changes to identify logical groupings within a large changeset. It uses threshold-based detection and contextual analysis to recognize when modifications belong to the same feature, fix, or documentation effort, then creates separate commits accordingly.

Will this respect my project's existing commit conventions?

Yes, this Skill detects existing conventions in your repository and tailors commit message generation to match them. This ensures new commits align with your team's established style and standards rather than imposing a generic format.

What should I do before running this on my repository?

Before running this Skill, ensure your Git repository contains staged or uncommitted changes you want to segment. The Skill analyzes your latest changes to detect logical boundaries and generate appropriate commit messages, so having a clear, discrete set of modifications produces the best results.