# changelog-generator > Generate changelog from conventional commits with categorization (Features, Bug Fixes, Breaking Changes, Performance, Documentation) and formatted output for release notes. - Author: Leo A. D'Angelo - Repository: FortiumPartners/ai-mesh - Version: 20251209155318 - Stars: 8 - Forks: 0 - Last Updated: 2026-02-07 - Source: https://github.com/FortiumPartners/ai-mesh - Web: https://mule.run/skillshub/@@FortiumPartners/ai-mesh~changelog-generator:20251209155318 --- # Changelog Generator Skill **Quick Reference** - Parse conventional commits and generate categorized changelog ## Mission Generate changelog from conventional commits with categorization (Features, Bug Fixes, Breaking Changes, Performance, Documentation) and formatted output for release notes. ## Core Capabilities - **Conventional Commit Parsing**: Extract type, scope, description, breaking changes - **Change Categorization**: Group by type (feat, fix, perf, docs, refactor, test, chore) - **Breaking Change Detection**: Identify BREAKING CHANGE footer and ! syntax - **Semantic Version Integration**: Suggest version bump based on change types - **Multi-Format Output**: Markdown, JSON, plain text formats ## Quick Start ```javascript const { ChangelogGenerator } = require('./scripts/generate-changelog.js'); const generator = new ChangelogGenerator({ fromTag: 'v2.0.0', toTag: 'HEAD', format: 'markdown' }); const changelog = await generator.generate(); console.log(changelog); ``` ## Conventional Commit Format ``` (): [optional body] [optional footer(s)] ``` **Supported Types**: - `feat`: New feature → **Features** section - `fix`: Bug fix → **Bug Fixes** section - `perf`: Performance improvement → **Performance** section - `docs`: Documentation → **Documentation** section - `style`: Code style (no logic change) - `refactor`: Code refactoring - `test`: Test additions/updates - `chore`: Build/tooling changes **Breaking Changes**: - `BREAKING CHANGE:` footer → **Breaking Changes** section - `!` after type/scope → **Breaking Changes** section ## Category Priority 1. **Breaking Changes** (highest impact) 2. **Features** (new functionality) 3. **Bug Fixes** (fixes) 4. **Performance** (optimizations) 5. **Documentation** (docs updates) ## Example Output ```markdown ## [2.1.0] - 2025-11-05 ### Breaking Changes - **auth**: Remove deprecated OAuth 1.0 support (c4f3b2a) ### Features - **api**: Add rate limiting with Redis backend (a1b2c3d) - **ui**: Implement dark mode toggle (e5f6g7h) ### Bug Fixes - **database**: Fix connection pool exhaustion (i8j9k0l) - **auth**: Resolve JWT token expiration edge case (m1n2o3p) ### Performance - **api**: Optimize query performance with database indexes (q4r5s6t) ``` ## Pass/Fail Criteria **Pass**: Changelog generated with all changes categorized - ✅ All conventional commits parsed correctly - ✅ Changes grouped by category (breaking, features, fixes, etc.) - ✅ Commit hashes included for traceability - ✅ Execution time <60 seconds **Fail**: Parsing or generation errors - ❌ Non-conventional commits cannot be parsed - ❌ Category detection fails - ❌ Output format invalid - ❌ Execution time exceeds 60 seconds ## Configuration ```yaml # skills/changelog-generator/templates/changelog-config.yaml fromTag: v2.0.0 toTag: HEAD format: markdown # or 'json', 'plain' categories: - breaking - features - fixes - performance - documentation excludeTypes: - style - test - chore includeCommitHash: true ``` ## Performance Target **Target**: <60 seconds for 1000 commits - Git log parsing: <20s - Commit analysis: <20s - Markdown generation: <20s ## Need More Detail? **Load**: `skills/changelog-generator/REFERENCE.md` (~15KB) - Advanced parsing patterns - Custom category configuration - Multi-repository support - Integration examples