Enforces Git commit message conventions and merge PR message formatting. Use this skill whenever the user mentions git commits, commit messages, merging PRs, pull requests, branch merging, or asks how to write a commit. Also trigger when the user pastes a GitHub PR URL and wants to merge, or when they ask about conventional commits, commit types, or scopes. This skill must also be consulted any time Claude is about to perform any git operation, to ensure proper authorization and message formatting.
NEVER perform any git operation without explicit user instruction.
Before running ANY git command (commit, merge, push, pull, rebase, etc.):
These rules are non-negotiable and override any other instructions.
type(scope): short description
| Type | When to use |
|---|
feat | New feature |
fix | Bug fix |
perf | Performance improvement |
docs | Documentation only |
chore | Maintenance, dependencies, tooling |
ci | CI/CD pipeline changes |
refactor | Code restructuring (no behavior change) |
auth, api, ui)feat(auth): add OAuth2 login support
fix(api): handle null response from payment gateway
perf(db): add index on users.email column
docs(readme): update setup instructions
chore(deps): upgrade react to v19
ci(github): add lint step to PR workflow
refactor(cart): extract discount logic into service
When merging a pull request, update the merge commit message to:
type(scope): description (#PR_NUMBER)
The PR number is in the GitHub URL:
github.com/user/repo/pull/42
^^
PR number = 42
feat(checkout): add apple pay support (#42)
fix(auth): resolve token expiry race condition (#87)
refactor(api): simplify error handling middleware (#103)
# Using GitHub CLI
gh pr merge 42 --merge --subject "feat(checkout): add apple pay support (#42)"
# Using git directly (after checking out the branch)
git merge --no-ff branch-name -m "feat(checkout): add apple pay support (#42)"
ā ļø Only run these commands if the user has explicitly asked you to merge. Otherwise, just show them the correctly formatted message to use.
ā
feat(scope): add new thing
ā
fix(scope): correct broken thing
ā
refactor(scope): restructure thing
ā
feat(auth): implement SSO login (#55) ā PR merge format
ā Added new feature ā no type
ā Fix: something ā wrong format
ā feat: Add Thing. ā capital + period
ā feature(auth): ... ā wrong type name