This skill should be used BEFORE running any git commit command. Triggers when about to run `git commit`. Ensures commit messages follow Conventional Commits specification.
Scanned 9/4/2026
Install to Claude Code
npx -y skills add fredrikaverpil/dotfiles --skill git-commit --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Git Commit?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/fredrikaverpil-git-commit-dotfiles)More formats (shields.io, HTML) on the badges page.
---
name: git-commit
description: >-
This skill should be used BEFORE running any git commit command. Triggers when
about to run `git commit`. Ensures commit messages follow Conventional Commits
specification.
---
# Git Commit Messages
Write commit messages following the Conventional Commits specification.
## Format
```
<type>(<scope>): <description>
[optional body]
[optional footer(s)]
```
## Types
| Type | Purpose |
| ---------- | ------------------------------------------------------- |
| `feat` | New feature |
| `fix` | Bug fix |
| `docs` | Documentation only |
| `style` | Code style (formatting, no logic change) |
| `refactor` | Code change that neither fixes a bug nor adds a feature |
| `perf` | Performance improvement |
| `test` | Adding or correcting tests |
| `build` | Build system or external dependencies |
| `ci` | CI configuration |
| `chore` | Maintenance tasks |
| `revert` | Reverts a previous commit |
## Rules
1. Use imperative mood in description ("add feature" not "added feature")
2. Do not end description with a period
3. Keep description under 72 characters
4. Separate subject from body with a blank line
5. Use the body to explain intent, nuances, gotchas, or background behind the
change — not a paraphrase of the diff
## Breaking Changes
Add **!** after type/scope or include **BREAKING CHANGE:** in footer:
```
feat(api)!: remove deprecated endpoints
BREAKING CHANGE: The /v1/users endpoint has been removed.
```
## Scope
Optional. Use to specify area of change (e.g., `api`, `ui`, `auth`, `db`).
## Branch Naming
When creating a new branch, name it `<type>/<kebab-description>` using the
same types as commit messages (e.g., `feat/add-user-auth`,
`fix/broken-symlinks`).
Exception: when the environment has already assigned a branch (e.g.,
`claude/...` branches in Claude cloud sandbox sessions), keep it — never
rename it or create a differently named branch to match this convention.
## Identity, Signing and Attribution
Git identity and commit signing are configured by the environment (gitconfig
on developer machines, a SessionStart hook in cloud sandboxes) — leave both to
it:
1. The message describes the change only: no `Co-Authored-By`, no "Generated
with" lines, no session links or model names.
2. Let git resolve the author from config — commit without `--author` or
`-c user.name=...`/`-c user.email=...`.
3. Let git resolve signing from config — commit without `-S`, `--gpg-sign` or
`--no-gpg-sign`, and leave signing-related config as it is.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!