Gitmoji Commit Conventions
This skill defines the commit message format to follow when creating git commits.
When to use this skill
- User asks to "commit my changes" or "create a commit"
- User asks to "push my code" or "commit and push"
- User invokes /git-commit, /git-commit-push, or /git-commit-push-pr commands
- Any task involving creating a git commit message
Commit format
- First line: Gitmoji + short description (< 50 chars)
- Blank line
- Detailed description listing significant changes
- Write concisely using an informal tone
- Do not use specific names or files from the code
- Do not use phrases like "this commit", "this change", etc.
- If branch contains a ticket reference (e.g.
JIRA-123,PROJ-456), add it as a footer:Refs: JIRA-123
Choosing a gitmoji
Read references/gitmoji.json before writing the commit message.
That file is the canonical list of gitmojis for this skill. Each entry has:
| Field | Use |
|---|---|
emoji |
Put this character at the start of the first line |
code |
Short name (e.g. :sparkles:) — do not use in the commit message |
description |
Primary field — match the change type to pick the right emoji |
name |
Alternate keyword for search (e.g. sparkles, bug) |
semver |
Optional hint for version bumps — ignore unless the user asks |
Selection workflow
- Read the staged diff and summarize the change type.
- Open
references/gitmoji.jsonand scandescriptionvalues for the best match. - If several fit, prefer the most specific one (e.g.
:ambulance:over:bug:for a critical hotfix). - Use the matched entry's
emojion the first line — not the:code:text.
Do not rely on memory or the table below; always confirm against the JSON file.
Splitting a mixed working tree
This skill covers the message only. When the working tree holds several
unrelated concerns and needs to become more than one commit, follow
commit-changes for the grouping and staging procedure and come back here for
each message.
Example
Branch: feature/JIRA-123-auth
✨ Add user authentication
- Implement OAuth2 flow
- Add session management
- Handle token refresh
Refs: JIRA-123