| name | gitmoji-commits |
| description | Create semantic git commits with gitmoji and Conventional Commits. Use this whenever the user asks to commit, stage changes, split work into multiple commits, choose emojis, or improve commit-message quality. |
| license | MIT |
| metadata | {"version":"1.1.0"} |
Gitmoji Commits
Create clean, intentional commits with the right emoji and scope.
Workflow (use in order)
-
Inspect working tree
- Run:
git status --short and git diff --stat
- Identify file groups by intent (feature, fix, docs, tests, config).
-
Plan commit boundaries
- Split unrelated work into separate commits.
- Use
git add -p for mixed files.
-
Choose emoji (core-first)
- Preferred:
bash scripts/gitmoji_selector.sh --emoji-only "<change summary>"
- If unsure/rare case: consult
references/gitmoji-guide.md.
-
Draft commit message
- Format:
emoji type(scope): subject
- Keep subject imperative and concise (<= 50 chars).
-
Stage only intended changes
- Run:
git add <file> or git add -p
- Re-check with:
git diff --cached --stat.
-
Safety check before commit
- Ensure no secrets, debug logs, or accidental churn.
- Ensure commit content matches the message.
-
Commit and repeat
- Run:
git commit -m "<message>"
- Repeat until working tree is clean.
Commit Format
โจ feat(auth): Add two-factor login
Optional body:
โจ feat(auth): Add two-factor login
- Add TOTP enrollment and verification
- Update auth service and user model
Closes #123
Type Guide
Use Conventional Commit types:
feat, fix, refactor, docs, test, perf, style, chore, ci, build
Common scopes: auth, api, ui, db, ci, deps
Core Emoji Map (auto-detected)
| Type | Emoji | Keywords |
|---|
| Feature | โจ | add, new, implement |
| Bug fix | ๐ | fix, bug, error |
| Simple fix | ๐ฉน | typo, quick, one-liner |
| Documentation | ๐ | docs, readme, changelog |
| Tests | ๐งช | test, spec, integration |
| Refactor | โป๏ธ | refactor, extract, restructure |
| Performance | โก | optimize, perf, cache |
| UI/Styles | ๐ | css, style, ui, theme |
| Dependencies | ๐ฆ | npm, dependency, package |
| Security | ๐ | security, cve, xss |
| Config | โ๏ธ / ๐ง | config, setup, settings |
| Remove | ๐๏ธ | remove, delete, deprecate |
| Major | ๐จ | rewrite, redesign, architect |
| Deploy | ๐ | deploy, release, ship |
| SEO | ๐ | seo, metadata |
| i18n | ๐ฃ๏ธ | translate, locale |
| Linter | ๐จ | eslint, prettier |
| Automation | ๐ | github actions, workflow |
| Test pass | โ
| tests passing, green build |
| Upgrade deps | โฌ๏ธ | upgrade, bump |
| Downgrade deps | โฌ๏ธ | downgrade |
| Types/Tag | ๐ท๏ธ | type definitions, version tags |
| Copy/Text | ๐ฌ | copy, strings, text |
| Comments/Notes | ๐ก | comment, todo, note |
| Mocks | ๐ญ | mock, stub |
Special Cases (highest priority)
| Emoji | When |
|---|
| โช | Revert commits |
| ๐ | Merge commits |
| ๐ | Hotfix |
| ๐ง | WIP |
Helper Script
bash scripts/gitmoji_selector.sh --emoji-only "fix critical bug"
bash scripts/gitmoji_selector.sh "update api docs"
bash scripts/gitmoji_selector.sh --conventional feat auth "Add login"