About conventional-commit
A prompt template for generating Conventional Commits messages, intended for developers who want consistent commit records. It guides change review, type and scope selection, and construction of the commit command.
Key features
- 01Review Git status and diffs
- 02Choose a compliant commit type and scope
- 03Write a concise imperative summary
- 04Support bodies, breaking changes, and issue references
- 05Commit using git commit
Use cases
- 01Write commit messages for features or fixes
- 02Standardize commit records across a team
- 03Document breaking changes in commits
- 04Link commits to related issues
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ github/ awesome-copilot --skill conventional-commitAfter installing, type/conventional-commitin Claude Code to confirm it loaded.
Details
From the project READMEInstructions
<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>
Comments
Markdown supported