# Gitmoji Cheatsheet

## 🎯 Purpose

Quick reference for using Gitmoji in commit messages. Follows the [Common Gitmoji Reference](https://gitmoji.dev/) standard as documented in [AGENTS.md](../AGENTS.md).

## 📋 When to Use Gitmoji

**Always use Gitmoji** for:
- Feature commits (`✨ feat:`)
- Bug fixes (`🐛 fix:`)
- Documentation (`📝 docs:`)
- Refactoring (`♻️ refactor:`)
- Build/config changes (`🔧 chore:`)

**Format:** `📝 docs: brief description of changes`

## 🔑 Common Gitmoji

### Feature & Bug Changes
```
✨ `:sparkles:` - New feature
🐛 `:bug:` - Bug fix
♻️ `:recycle:` - Code refactoring
🔥 `:fire:` - Remove code/files
🚀 `:rocket:` - Performance improvements
🔒 `:lock:` - Security fixes
```

### Documentation & Style
```
📝 `:memo:` - Documentation changes
🎨 `:art:` - Code formatting/style
📦 `:package:` - Dependency changes
```

### Testing & CI/CD
```
🧪 `:test_tube:` - Tests
🤖 `:robot:` - CI/CD changes
```

### Platform-Specific
```
🐧 `:penguin:` - Linux changes
🍎 `:apple:` - macOS changes
🪟 `:window:` - Windows changes
```

### Other Common
```
📈 `:chart_with_upwards_trend:` - Analytics/SEO
🌐 `:globe_with_meridians:` - Internationalization
⚡ `:zap:` - Performance improvements
🔌 `:electric_plug:` - Add/remove dependencies
🏗️ `:building_construction:` - Architecture changes
```

## 📖 Examples

### Good Commit Messages
```
✅ 📝 docs: add AGENT_USAGE_GUIDE.md with launch commands
✅ ✨ feat: implement OAuth authentication with JWT
✅ 🐛 fix: resolve CI workflow validation error
✅ ♻️ refactor: extract payment service from monolith
✅ 🧪 test: add BDD scenarios for authentication
✅ 🔧 chore: update go.mod dependencies
```

### Bad Commit Messages
```
❌ No gitmoji: "add documentation"
❌ Wrong gitmoji: "📖 docs: add guide" (should be 📝)
❌ Too vague: "📝 docs: update"
❌ Too long: "📝 docs: add comprehensive guide with examples and references and usage patterns"
```

## 🎯 Best Practices

### 1. **Be Specific**
```
❌ "📝 docs: update README"
✅ "📝 docs: add agent launch commands to README"
```

### 2. **Use Imperative Mood**
```
❌ "📝 docs: added guide"
✅ "📝 docs: add guide"
```

### 3. **Keep It Short**
```
❌ "📝 docs: add comprehensive documentation guide with examples and references"
✅ "📝 docs: add AGENT_USAGE_GUIDE.md"
```

### 4. **Link to References**
```
✅ "✨ feat: implement payment system (#42)"
✅ "🐛 fix: CI workflow error (see #45)"
✅ "📝 docs: update README (ref adr/0008)"
```

## 🔍 How to Check Gitmoji

### Using the commit-message skill
```bash
# Validate a commit message
skill commit-message validate \
  --message "📝 docs: update changelog guide" \
  --file .git/COMMIT_EDITMSG

# Get suggestions
skill commit-message suggest \
  --type "documentation" \
  --description "update changelog guide"
```

### Quick Reference
```bash
# List all gitmoji
skill commit-message list-gitmoji

# Check specific type
skill commit-message suggest --type "docs"
```

## 📚 Reference

- [Common Gitmoji Reference](https://gitmoji.dev/)
- [AGENTS.md](../AGENTS.md) - Project-specific conventions
- [Conventional Commits](https://www.conventionalcommits.org/)

**Tip:** Bookmark this cheatsheet or use `skill commit-message list-gitmoji` for quick reference!