Project change log
Skill hackermanishackerman/claude-skills-vault/.claude/skills/project-change-log
🛠️ Curate and enhance your coding skills with Claude Skills Vault, a collection of commands and MCP server guides for efficient development.
npx -y skills add hackermanishackerman/claude-skills-vault --skill project-change-logAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.9 KB, as published. Nobody here has run it
Project Change Log
Automatically maintain a CHANGELOG.md file following the Keep a Changelog standard.
When to Use
- After creating a commit
- When
/commitcommand is executed - When user asks to update changelog
- When releasing a new version
Changelog Format
The standard format is CHANGELOG.md in the project root, following Keep a Changelog:
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/),
and this project adheres to [Semantic Versioning](https://semver.org/).
## [Unreleased]
### Added
- New feature description
### Changed
- Change description
### Fixed
- Bug fix description
## [1.0.0] - 2026-01-04
### Added
- Initial release features
Change Categories
| Category | Description |
|---|---|
| Added | New features |
| Changed | Changes in existing functionality |
| Deprecated | Soon-to-be removed features |
| Removed | Removed features |
| Fixed | Bug fixes |
| Security | Vulnerability fixes |
Process
1. Detect Changelog
Check if CHANGELOG.md exists in project root:
- If exists: Read current content
- If not: Create with template
2. Analyze Commit
Extract from the commit:
- Type: feat, fix, docs, etc.
- Scope: Affected area
- Description: What changed
- Date: Current date (YYYY-MM-DD)
- Author: From git config
3. Map Commit Type to Category
| Commit Type | Changelog Category |
|---|---|
feat | Added |
fix | Fixed |
docs | Changed |
style | Changed |
refactor | Changed |
perf | Changed |
test | Changed |
build | Changed |
ci | Changed |
chore | Changed |
security | Security |
deprecate | Deprecated |
remove | Removed |
4. Update Changelog
Add entry under [Unreleased] section in appropriate category:
## [Unreleased]
### Added
- New entry here with description
5. Version Release
When releasing a version:
- Move
[Unreleased]content to new version section - Add version number and date
- Create new empty
[Unreleased]section
Entry Format
Each entry should be:
- One line per change
- Start with capital letter
- No period at end
- Include scope if relevant:
**scope**: description
Examples:
### Added
- **auth**: OAuth2 login with Google and GitHub
- User profile settings page
- Dark mode toggle
### Fixed
- **api**: Handle null response in user endpoint
- Memory leak in websocket connections
Template
Initial CHANGELOG.md template:
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/),
and this project adheres to [Semantic Versioning](https://semver.org/).
## [Unreleased]
### Added
### Changed
### Fixed
Integration with Commit
After each commit:
- Parse commit message for type and description
- Determine changelog category
- Add entry under
[Unreleased] - Stage CHANGELOG.md (do not create separate commit)
Examples
Example 1: Feature Commit
Commit: feat(auth): add OAuth2 login support
Changelog Entry:
### Added
- **auth**: OAuth2 login support
Example 2: Bug Fix
Commit: fix(api): handle null response in user endpoint
Changelog Entry:
### Fixed
- **api**: Handle null response in user endpoint
Example 3: Version Release
Before:
## [Unreleased]
### Added
- Feature A
- Feature B
### Fixed
- Bug fix X
After releasing v1.2.0:
## [Unreleased]
## [1.2.0] - 2026-01-04
### Added
- Feature A
- Feature B
### Fixed
- Bug fix X