
Conventional Commit
OfficialFreeStreamline your commit message process with structured prompts.
Free · Opens the source repo
What Conventional Commit does
The Conventional Commit skill provides a structured approach to generating commit messages that adhere to the Conventional Commits specification. This skill is particularly useful for developers who want to maintain clarity and consistency in their commit history. By following a defined XML format, users can easily create standardized messages that convey the nature of changes made to their codebase. The skill includes detailed instructions, examples, and validation rules to guide users through the process, ensuring that every commit message is informative and compliant with best practices.
To utilize this skill, users begin by reviewing their changed files with git status and inspecting the differences with git diff. Once they have staged their changes, they can construct their commit message using the provided XML structure. The skill automatically integrates with the terminal, allowing Copilot to execute the commit command without requiring further confirmation from the user. This seamless integration helps streamline the workflow, reducing the overhead of manual message crafting.
This skill is ideal for teams and individuals who prioritize clean commit histories and want to enforce a consistent commit message format across their projects. By using Conventional Commits, developers can enhance collaboration and improve the readability of their project's history, making it easier to track changes and understand the rationale behind them. Moreover, the skill's validation rules ensure that users adhere to the specified format, minimizing errors and promoting best practices in version control.
When to use it
Use this skill when you want to ensure your commit messages are clear, structured, and compliant with the Conventional Commits specification.
When not to use it
This skill may not be suitable if you prefer a more flexible or informal approach to writing commit messages.
What you can build with it
Team Collaboration
In a team setting, using this skill ensures that all members follow the same commit message standards, improving communication.
Project Documentation
For projects requiring clear documentation, structured commit messages help maintain a coherent history that is easy to reference.
Automated Release Notes
By adhering to Conventional Commits, you can automate the generation of release notes based on commit messages, saving time during releases.
How to install Conventional Commit
View source1. Install with the skills CLI
npx skills add github/awesome-copilot/conventional-commit --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by githubInstructions
<description>This file contains a prompt template for generating conventional commit messages. It provides instructions, examples, and formatting guidelines to help users write standardized, descriptive commit messages in accordance with the Conventional Commits specification.</description>
Workflow
Follow these steps:
- Run
git statusto review changed files. - Run
git difforgit diff --cachedto inspect changes. - Stage your changes with
git add <file>. - Construct your commit message using the following XML structure.
- After generating your commit message, Copilot will automatically run the following command in your integrated terminal (no confirmation needed):
git commit -m "type(scope): description"
- Just execute this prompt and Copilot will handle the commit for you in the terminal.
Commit Message Structure
<commit-message>
<type>feat|fix|docs|style|refactor|perf|test|build|ci|chore|revert</type>
<scope>()</scope>
<description>A short, imperative summary of the change</description>
<body>(optional: more detailed explanation)</body>
<footer>(optional: e.g. BREAKING CHANGE: details, or issue references)</footer>
</commit-message>
Examples
<examples>
<example>feat(parser): add ability to parse arrays</example>
<example>fix(ui): correct button alignment</example>
<example>docs: update README with usage instructions</example>
<example>refactor: improve performance of data processing</example>
<example>chore: update dependencies</example>
<example>feat!: send email on registration (BREAKING CHANGE: email service required)</example>
</examples>
Validation
<validation>
<type>Must be one of the allowed types. See <reference>https://www.conventionalcommits.org/en/v1.0.0/#specification</reference></type>
<scope>Optional, but recommended for clarity.</scope>
<description>Required. Use the imperative mood (e.g., "add", not "added").</description>
<body>Optional. Use for additional context.</body>
<footer>Use for breaking changes or issue references.</footer>
</validation>
Final Step
<final-step>
<cmd>git commit -m "type(scope): description"</cmd>
<note>Replace with your constructed message. Include body and footer if needed.</note>
</final-step>
Frequently asked questions about Conventional Commit
Similar skills
Release Candidate Preparation
Streamline your OpenAI Agents release process.
Gitmoji
Generate expressive commit messages with emojis.
GitHub Release
Automate your GitHub library release process effortlessly.
Commit Message Storyteller
Generate meaningful commit messages from your git diffs.
Author Contributions
Trace author contributions across branches in Git.
Implementation Kickoff
Streamline your code implementation process with ease.
