with one click
gitmoji-skill
// Prefixes commit messages and PR titles with an appropriate Gitmoji. Activate when writing or amending commit messages, drafting PR titles, or choosing a Gitmoji for a change.
// Prefixes commit messages and PR titles with an appropriate Gitmoji. Activate when writing or amending commit messages, drafting PR titles, or choosing a Gitmoji for a change.
| name | gitmoji-skill |
| description | Prefixes commit messages and PR titles with an appropriate Gitmoji. Activate when writing or amending commit messages, drafting PR titles, or choosing a Gitmoji for a change. |
When making a commit, start the commit subject with one Gitmoji that describes the primary intent of the change.
When creating or updating a pull request, start the PR title with one Gitmoji that describes the primary intent of the PR.
Use one of these forms:
<gitmoji> <message>
<gitmoji> (<scope>): <message>
If the repository uses Conventional Commits, the Gitmoji stays first:
<gitmoji> <type>: <message>
<gitmoji> <type>(<scope>): <message>
<gitmoji> <type>!: <message> # breaking change
Examples:
๐ Begin project
๐ Add Gitmoji skill docs
โป๏ธ (parser): simplify token handling
๐ Fix login redirect loop
โ
Add webhook parser tests
โจ feat(search): add invoice filters
๐ฅ feat!: drop Node 18 support
First, check the repository's existing convention. Run:
git log --oneline -20
Also skim CONTRIBUTING.md, .gitmessage, or commit-lint config if present. If the project already has a Gitmoji style (Unicode vs shortcode, position, scope format), follow it exactly.
Otherwise, choose the most specific official Gitmoji for the primary change:
| Change | Gitmoji |
|---|---|
| New feature | โจ |
| Bug fix | ๐ |
| Critical hotfix | ๐๏ธ |
| Documentation | ๐ |
| Tests | โ |
| Refactor | โป๏ธ |
| Improve structure or formatting | ๐จ |
| Performance | โก๏ธ |
| Remove code or files | ๐ฅ |
| Configuration | ๐ง |
| Development scripts | ๐จ |
| CI build system | ๐ท |
| Fix CI build | ๐ |
| Upgrade dependencies | โฌ๏ธ |
| Downgrade dependencies | โฌ๏ธ |
| Add dependency | โ |
| Remove dependency | โ |
| Lint or compiler warnings | ๐จ |
| Security or privacy | ๐ |
| Accessibility | โฟ๏ธ |
| Types | ๐ท๏ธ |
| Move or rename resources | ๐ |
| Work in progress | ๐ง |
| Breaking change | ๐ฅ |
๐จ vs โป๏ธ: use ๐จ for code style and structural changes that don't alter behavior (formatting, import sorting, file organization); use โป๏ธ for behavior-preserving rework that changes implementation (extracting functions, renaming, simplifying logic).
๐ vs ๐๏ธ: use ๐ for ordinary bug fixes; use ๐๏ธ only for critical hotfixes shipped urgently to address production breakage.
If no entry above fits, read references/gitmojis.md (the full official list of 75 Gitmojis) and pick the closest match. If still nothing fits, fall back to โจ for additive work, ๐ for fixes, or โป๏ธ for refactors. Do not invent decorative emoji when an official Gitmoji applies.
Skip ๐ฉ, ๐ป, and ๐ฅ โ these appear in the official list but are not appropriate for agent-authored commits.
:sparkles:) only if the repository's existing commits use them.Co-Authored-By:, Signed-off-by:).git commit --amend: keep the original Gitmoji unless the amend changes the intent (e.g., a typo-fix amend that turns into a feature addition).git commit --fixup and git commit --squash: do not add a Gitmoji; Git generates the fixup!/squash! subject and it will be squashed away.โช๏ธ for explicit reverts. Let git revert generate its default Revert "โฆ" subject, then prepend โช๏ธ if you edit it.git merge generate its default subject; do not add a Gitmoji to auto-generated merge commits.Use the same selection rules for PR titles. For a PR with many commits, choose the Gitmoji that best describes the final user-visible or maintainer-visible outcome.
Gitmoji applies to PR titles and commit subjects only โ PR descriptions and commit bodies use the repository's normal template without Gitmojis.
Examples:
โจ Add saved report filters
๐ Fix OAuth callback validation
๐ Document deployment environment variables