--- name: commit_message description: Helps create proper Gitmoji commit messages following the Common Gitmoji Reference from AGENTS.md. Use when creating commits to ensure consistent, visual commit messages. license: MIT metadata: author: DanceLessonsCoach Team version: "1.0.0" based-on: AGENTS.md Common Gitmoji Reference --- # Commit Message Skill This skill helps create proper Gitmoji commit messages following the Common Gitmoji Reference from AGENTS.md. ## Gitmoji Reference ### Feature Changes - **โœจ `:sparkles:` feat**: New feature - **๐Ÿ› `:bug:` fix**: Bug fix - **โ™ป๏ธ `:recycle:` refactor**: Code refactoring - **๐Ÿ”ฅ `:fire:` remove**: Remove code/files - **๐Ÿš€ `:rocket:` perf**: Performance improvements - **๐Ÿ”’ `:lock:` security**: Security fixes ### Documentation & Style - **๐Ÿ“ `:memo:` docs**: Documentation - **๐ŸŽจ `:art:` style**: Code formatting - **๐Ÿ“ฆ `:package:` dependencies**: Dependency changes ### Platform-Specific - **๐Ÿง `:penguin:` linux**: Linux-specific changes - **๐ŸŽ `:apple:` macos**: macOS-specific changes - **๐ŸชŸ `:window:` windows**: Windows-specific changes ### Testing & CI - **๐Ÿงช `:test_tube:` test**: Tests - **๐Ÿค– `:robot:` ci**: CI/CD changes ### Other - **๐Ÿ“ˆ `:chart_with_upwards_trend:` analytics**: Analytics/SEO - **๐ŸŒ `:globe_with_meridians:` i18n**: Internationalization - **โšก `:zap:` performance**: Performance improvements - **๐Ÿ”ง `:wrench:` chore**: Build/config changes ## Usage Examples ### New Feature ```bash git commit -m "โœจ feat: add user authentication" git commit -m "โœจ feat: implement BDD testing framework" ``` ### Bug Fix ```bash git commit -m "๐Ÿ› fix: resolve port conflict in test server" git commit -m "๐Ÿ› fix: handle JSON escaping in feature files" ``` ### Documentation ```bash git commit -m "๐Ÿ“ docs: add comprehensive BDD testing guide" git commit -m "๐Ÿ“ docs: update AGENTS.md with commit conventions" ``` ### Refactoring ```bash git commit -m "โ™ป๏ธ refactor: move log setup to config package" git commit -m "โ™ป๏ธ refactor: improve step pattern matching" ``` ### Tests ```bash git commit -m "๐Ÿงช test: add BDD scenarios for greet service" git commit -m "๐Ÿงช test: implement health endpoint validation" ``` ### Configuration ```bash git commit -m "๐Ÿ”ง chore: add log output file configuration" git commit -m "๐Ÿ”ง chore: update build system scripts" ``` ## Best Practices ### Commit Message Structure ``` : ``` ### Examples **Simple commit:** ``` โœจ feat: add skill_creator framework ``` **Detailed commit:** ``` โœจ feat: implement BDD testing with Godog - Add features/greet.feature and features/health.feature - Implement step definitions in pkg/bdd/steps/ - Create hybrid in-process test server - Add comprehensive documentation Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe ``` **Complex commit:** ``` ๐Ÿงช test: add comprehensive BDD test suite - Implement greet service scenarios - Add health endpoint validation - Create test server on port 9191 - Ensure no undefined/pending steps Resolves: #42 Ref: AGENTS.md Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe ``` ## Validation ### Check Commit Message Format ```bash # Verify gitmoji is present echo "$commit_message" | grep -E "^[[:space:]]*[๐ŸŽจโœจ๐Ÿ›๐Ÿ“๐Ÿ”งโ™ป๏ธ๐Ÿš€๐Ÿ”’๐Ÿ“ฆ๐Ÿ”ฅ๐Ÿง๐ŸŽ๐ŸชŸ๐Ÿค–๐Ÿงช๐Ÿ“ˆ๐ŸŒโšก]" # Verify type: description format echo "$commit_message" | grep -E "^[๐ŸŽจโœจ๐Ÿ›๐Ÿ“๐Ÿ”งโ™ป๏ธ๐Ÿš€๐Ÿ”’๐Ÿ“ฆ๐Ÿ”ฅ๐Ÿง๐ŸŽ๐ŸชŸ๐Ÿค–๐Ÿงช๐Ÿ“ˆ๐ŸŒโšก][[:space:]]+[a-z_]+:" ``` ### Common Validation Issues | Issue | Cause | Solution | |-------|-------|----------| | Missing gitmoji | No emoji at start | Add appropriate gitmoji from reference | | Wrong type | Type doesn't match emoji | Use correct type from reference table | | Missing colon | No colon after type | Add colon: `feat:` not `feat` | | Long first line | First line > 50 chars | Keep first line concise, add details in body | ## References - [Gitmoji Official Site](https://gitmoji.dev) - [Common Gitmoji Reference in AGENTS.md](#common-gitmoji-reference) - [Conventional Commits](https://www.conventionalcommits.org/) ## Troubleshooting ### Finding the Right Gitmoji ```bash # Search for appropriate gitmoji grep "feature\|new" .vibe/skills/commit_message/SKILL.md # Result: โœจ :sparkles: feat - New feature ``` ### Commit Message Too Long ```bash # Split into concise first line + detailed body git commit -m "โœจ feat: add BDD framework" -m "- Implement Godog testing" -m "- Add greet/health features" -m "- Create test server" ``` ### Multiple Changes in One Commit ```bash # Use comprehensive description git commit -m "โ™ป๏ธ refactor: improve BDD implementation" -m "- Update step patterns to match Godog exactly" -m "- Add JSON response validation" -m "- Implement server verification" -m "- Update all templates and documentation" ``` ## Assets - **gitmoji-cheatsheet.md**: Quick reference for common gitmoji - **commit-template.txt**: Git commit message template - **validate-commit.sh**: Commit message validation script