commit-msg

Generate concise English commit messages from git diffs.

6|Updated Apr 5, 2026
One-click install
npx skills add https://github.com/vmkteam/claude-plugins --skill commit-msg-vmkteam
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: commit-msg
Source: https://github.com/vmkteam/claude-plugins/tree/main/plugins/developer/skills/commit-msg
Command: npx skills add https://github.com/vmkteam/claude-plugins --skill commit-msg-vmkteam

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It helps developers generate concise English commit messages from a git diff (including both staged and unstaged changes), enabling consistent history and easier code review.

Core Features & Use Cases

  • Generate a subject line in English with a max length of 50 characters in imperative mood.
  • Include a body with bullet points summarizing what changed and why (not how).
  • Prefix the subject with a ticket or task id from the branch name when present.
  • Integrate into pre-commit hooks or CI to enforce standardized messages from diffs.

Quick Start

Provide the full git diff (staged and unstaged) to generate a concise commit message.

Frequently Asked Questions about commit-msg

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

FAQPage Schema
How do I generate a concise commit message from a git diff?

You can generate a commit message from a git diff by providing the full staged and unstaged changes. The tool then creates a concise English subject line and a summarizing body explaining what changed and why.

What is the best way to enforce a 50-character subject line in git commits?

Enforcing a 50-character subject line in git commits is achieved by integrating this diff-to-message generator into pre-commit hooks or CI pipelines, ensuring standardized, imperative-mood subject lines are created automatically from code changes.

Can I prefix my commit messages with a ticket id from the branch name automatically?

Yes, you can prefix commit messages with a ticket id from the branch name automatically. When a ticket or task id is present in the branch name, the generated commit message subject will include it as a prefix.

How do I integrate commit message generation into a pre-commit workflow?

Integrating commit message generation into a pre-commit workflow involves running the git diff to capture all changes and passing them to the generator, which outputs a standardized message with a 50-character subject and bulleted body.

Does automated commit message generation work for both staged and unstaged changes?

Automated commit message generation works for both staged and unstaged git changes. You provide the full git diff encompassing all modifications to produce a comprehensive and consistent English commit message.

What should a git commit message body include when generated from a diff?

A git commit message body generated from a diff should include bullet points summarizing what changed and why, rather than how. This ensures clear code review history and consistent version-control documentation.