---
name: Conventional Commits
slug: conventional-commits
category: DevOps
description: "Conventional Commits enforces the repository's commit message format for git changes. Use it when writing commit messages that need a type prefix, issue reference, and atomic scope."
github: "https://github.com/awattar/claude-code-best-practices/tree/main/.claude/skills/conventional-commits"
stars: 250
forks: 38
install: "npx degit https://github.com/awattar/claude-code-best-practices/tree/main/.claude/skills/conventional-commits ~/.claude/skills/conventional-commits"
installs_to: ~/.claude/skills/conventional-commits
source_path: .claude/skills/conventional-commits/SKILL.md
collection_size: 1
category_size: 828
added: 2026-09-02T05:20:55.972Z
last_synced: 2026-09-02T05:20:55.972Z
canonical_url: "https://dirskills.com/skills/conventional-commits"
---

# Conventional Commits

Conventional Commits enforces the repository's commit message format for git changes. Use it when writing commit messages that need a type prefix, issue reference, and atomic scope.

**Install:**

```bash
npx degit https://github.com/awattar/claude-code-best-practices/tree/main/.claude/skills/conventional-commits ~/.claude/skills/conventional-commits
```

## README

# Conventional Commits

When creating any git commit in this repository, follow the project's commit convention.
Unlike the `/commit` command (which the user invokes explicitly), this skill applies
automatically whenever a commit message is being authored.

## Format

Single-line, when a GitHub issue applies:

    <type>: (#<issue_number>) <issue_name> - <description>.

Single-line, when no GitHub issue applies:

    <type>: <description>.

Multiline, when the change spans multiple concerns:

    <type>: (#<issue_number>) <issue_name>:
    - <description_line_1>.
    - <description_line_2>.

## Rules

- `<type>` is exactly one of: `New feature`, `Fix issue`, `Other`.
- Single-line messages end with `.`; the first line of a multiline message ends with `:`.
- Every bullet starts with `- ` and ends with `.`.
- Use present tense, imperative mood ("add feature", not "added feature").
- Keep commits atomic — one logical concern per commit. Split unrelated changes into
  separate commits.
- NEVER add trailers such as "Generated with Claude Code", author info, or co-author lines.

## References

- Full template with examples: `.gitmessage`
- Commit-splitting guidance and workflow integration: `.github/COMMIT_CONVENTION.md`
- For an interactive, guided commit flow, use the `/commit` command.
