changelog-manager
Scannednpx machina-cli add skill datamaker-kr/synapse-claude-marketplace/changelog-manager --openclawChangelog Manager Skill
Purpose
This skill manages changelog entries in CHANGELOG.md following the Keep a Changelog format with Calendar Versioning.
Core Capabilities
1. Changelog Entry Generation
- Analyze current changes and commits
- Generate appropriate changelog descriptions
- Support Korean and English languages
- Extract ticket IDs from branch names
- Follow Keep a Changelog categories
2. Change Analysis
- Review git commits since last release
- Identify changed files and their purposes
- Categorize changes appropriately
- Generate concise but informative descriptions
3. Format Compliance
- Maintain Keep a Changelog format
- Use CalVer (YYYY.MM.MICRO) versioning
- Include JIRA ticket linking
- Preserve existing format and conventions
Versioning Strategy
This plugin uses Calendar Versioning with format YYYY.Minor.Patch.
Examples:
2026.1.0- First minor release in 20262026.1.1- First patch release2026.2.0- Second minor release in 2026
Changelog Categories
Based on Keep a Changelog:
- Added: New features, endpoints, functionality
- Changed: Changes in existing functionality, improvements, updates
- Fixed: Bug fixes, error corrections, issue resolutions
- Deprecated: Soon-to-be removed features
- Removed: Removed features
- Security: Security fixes
Entry Format
- [TICKET-ID](JIRA-URL) Description in specified language
Korean Example:
- [SYN-1234](https://jira.example.com/browse/SYN-1234) 사용자 인증 기능 추가
English Example:
- [SYN-1234](https://jira.example.com/browse/SYN-1234) Add user authentication feature
Workflow
1. Extract Ticket ID
From branch name:
git branch --show-current
# Example: feature/SYN-1234-user-authentication
# Extract: SYN-1234
Pattern: (PROJ-\d+) where PROJ is project prefix
2. Analyze Changes
Review commits:
git log --oneline --since="$(git describe --tags --abbrev=0)"
Review changed files:
git diff --name-status $(git describe --tags --abbrev=0)..HEAD
3. Generate Description
Based on:
- Commit messages
- Changed files
- Code diff analysis
- User input if needed
Guidelines:
- Be concise but informative
- Focus on "what" not "how"
- Use active voice
- Mention affected components
4. Add to CHANGELOG.md
Location: Under ## [Unreleased] in appropriate category
Format:
## [Unreleased] - yyyy-mm-dd
### Added
- [TICKET-ID](JIRA-URL) New feature description
### Changed
- [TICKET-ID](JIRA-URL) Updated feature description
### Fixed
- [TICKET-ID](JIRA-URL) Bug fix description
Parameters
type: Changelog category (added/changed/fixed/deprecated/removed/security)lang: Description language (korean/english)ticket: Ticket ID (optional, auto-extracted from branch if not provided)
Integration
This skill is invoked by:
/add-changelogcommand - Manual changelog entry addition
Best Practices
Do:
- ✅ Follow Keep a Changelog format
- ✅ Use CalVer versioning
- ✅ Include ticket IDs with links
- ✅ Write clear, concise descriptions
- ✅ Maintain chronological order (newest first)
- ✅ Group related changes together
Don't:
- ❌ Mix multiple unrelated changes in one entry
- ❌ Use vague descriptions
- ❌ Forget ticket ID linking
- ❌ Break existing format
- ❌ Add duplicate entries
Example Usage
Add new feature (Korean):
User: /add-changelog --type added
Skill: Analyzes changes → Generates description → Adds to CHANGELOG.md
Result: - [SYN-1234](URL) 사용자 프로필 이미지 업로드 기능 추가
Fix bug (English):
User: /add-changelog --type fixed --lang eng
Skill: Analyzes changes → Generates description → Adds to CHANGELOG.md
Result: - [SYN-1235](URL) Fix profile image upload validation error
Error Handling
- No ticket ID found: Ask user to provide ticket ID
- CHANGELOG.md not found: Create new CHANGELOG.md with proper format
- No Unreleased section: Add Unreleased section
- Invalid category: Default to "Added" or ask user
File Structure
CHANGELOG.md format:
# Changelog
## [Unreleased] - yyyy-mm-dd
### Added
### Changed
### Fixed
## [2026.1.0] - 2026-01-15
### Added
- Feature 1
- Feature 2
### Changed
- Change 1
Source
git clone https://github.com/datamaker-kr/synapse-claude-marketplace/blob/main/plugins/platform-dev-team-common/skills/changelog-manager/SKILL.mdView on GitHub Overview
Keeps CHANGELOG.md in Keep a Changelog format using CalVer versioning. It analyzes recent commits, extracts JIRA ticket IDs from branch names, and creates language-appropriate, concise changelog entries.
How This Skill Works
The tool extracts the ticket ID from the current branch name, reviews commits since the last tag, and generates a concise description based on changed files and diffs. It then updates CHANGELOG.md under the Unreleased section in the appropriate category, preserving the Keep a Changelog structure.
When to Use It
- Preparing a new release and needing a compliant changelog entry
- Aggregating multiple commits into a single categorized entry
- Automatically linking work to JIRA tickets via branch names
- Maintaining CalVer versioning across releases
- Updating CHANGELOG.md in a repository that follows Keep a Changelog
Quick Start
- Step 1: Run /add-changelog --type <added|changed|fixed|deprecated|removed|security> --lang <korean|english> [--ticket SYN-1234]
- Step 2: If --ticket is omitted, the skill extracts it from the current branch name (e.g., feature/SYN-1234-...)
- Step 3: The skill analyzes commits, generates a description, and updates CHANGELOG.md under Unreleased
Best Practices
- Follow Keep a Changelog format strictly
- Use CalVer correctly (YYYY.Minor.Patch) and update on release
- Include ticket IDs with links to JIRA
- Write concise, informative descriptions in active voice
- Avoid mixing unrelated changes in a single entry
Example Use Cases
- - [SYN-1234](https://jira.example.com/browse/SYN-1234) Add user authentication feature
- - [SYN-2345](https://jira.example.com/browse/SYN-2345) Improve API search endpoint performance
- - [SYN-3456](https://jira.example.com/browse/SYN-3456) Fix crash on startup under low memory
- - [SYN-4567](https://jira.example.com/browse/SYN-4567) Remove deprecated login method
- - [SYN-5678](https://jira.example.com/browse/SYN-5678) Harden security by enabling MFA for admins