mcpField
K
keep-a-changelog-generator

keep-a-changelog-generator

github.com/stanfordspeziDevelopment26117 installsUpdated 4w ago
Repository

About keep-a-changelog-generator

keep-a-changelog-generator is a skill for creating and maintaining structured changelogs from Git history. It is intended for project maintainers and organizes changes according to Keep a Changelog categories, with user-facing descriptions and breaking-change flags.

Key features

  1. 01Generate entries from Git history
  2. 02Group changes into standard categories
  3. 03Convert commits to user-facing descriptions
  4. 04Flag breaking changes
  5. 05Format output for CHANGELOG.md

Use cases

  1. 01Prepare changelog entries for a release
  2. 02Document changes since the prior version
  3. 03Maintain a project's CHANGELOG.md

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/stanfordspezi/spezivibe --skill keep-a-changelog-generator

After installing, type/keep-a-changelog-generatorin Claude Code to confirm it loaded.

Details

From the project README

Changelog Generator

Generate changelogs from git history following Keep a Changelog format.

When to Use

Use this skill when you need to:

  • Generate changelog entries for a release
  • Document changes since the last version
  • Maintain a project's CHANGELOG.md file

Use release-notes-generator instead when you need a narrative release announcement with highlights, usage examples, and migration guidance. This skill maintains the structured CHANGELOG.md file; that one writes the story of a single release.

Changelog Format

Follow 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/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Added
- New features

### Changed
- Changes in existing functionality

### Deprecated
- Features that will be removed

### Removed
- Removed features

### Fixed
- Bug fixes

### Security
- Security fixes

Change Categories

Categorize based on commit messages and code changes:

CategoryCommit KeywordsExamples
Addedadd, create, implement, introduceNew features, screens
Changedupdate, change, modify, refactor, improveAPI changes, enhancements
DeprecateddeprecateFeatures to be removed
Removedremove, delete, dropDeleted features
Fixedfix, resolve, correct, patchBug fixes
Securitysecurity, vulnerability, CVESecurity patches

Git Commands

# Recent commits
git log --oneline -20

# Commits between tags
git log v1.0.0..HEAD --oneline

# Full commit messages
git log --format="%h %s%n%b" HEAD~10..HEAD

# Commits since a date
git log --since="2026-01-01" --oneline

Writing Guidelines

User-Facing Descriptions

Translate technical commits to user benefits:

  • Technical: "Refactor auth state machine"
  • User-facing: "Improved reliability of authentication state management"
Breaking Changes

Flag API changes clearly:

### Changed
- **BREAKING**: `login()` now returns `Promise<User>` instead of `Promise<void>`

Output Example

## [1.2.0] - 2026-01-14

### Added
- New health data visualization screen
- Apple HealthKit integration for step counting
- Export health data to PDF

### Changed
- Improved task scheduling performance
- Updated questionnaire UI design

### Fixed
- Fixed race condition in account state initialization
- Resolved infinite loop when no tasks exist

Workflow

  1. Run git log to get commits since last release
  2. Group commits by category (Added/Changed/Fixed/etc.)
  3. Identify breaking changes
  4. Write user-facing descriptions
  5. Include PR/issue references where available
  6. Format following Keep a Changelog structure

Comments

Markdown supported