Claude-code-optimizer changelog

Use when the user wants a changelog, release notes, or asks what changed since the last release.

install
source · Clone the upstream repo
git clone https://github.com/huzaifa525/claude-code-optimizer
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/huzaifa525/claude-code-optimizer "$T" && mkdir -p ~/.claude/skills && cp -r "$T/templates/.claude/skills/changelog" ~/.claude/skills/huzaifa525-claude-code-optimizer-changelog && rm -rf "$T"
manifest: templates/.claude/skills/changelog/SKILL.md
source content

Generate a changelog from git history.

Steps

  1. Find the last tag

    git describe --tags --abbrev=0 2>/dev/null || echo "no-tags"
    
  2. Get commits since last tag

    git log [last-tag]..HEAD --oneline --no-merges
    

    If no tags, get last 50 commits.

  3. Categorize commits by prefix:

    CategoryPrefixes
    Featuresfeat:, feature:, add:
    Bug Fixesfix:, bugfix:, hotfix:
    Performanceperf:
    Refactoringrefactor:
    Documentationdocs:, doc:
    Testingtest:, tests:
    CI/CDci:, cd:, build:
    Choreschore:, deps:, bump:
    Breaking Changesany commit with BREAKING CHANGE in body

    If commits don't use conventional prefixes, categorize by content.

  4. Generate CHANGELOG.md entry:

    ## [version] - YYYY-MM-DD
    
    ### Features
    - Description ([commit-hash])
    
    ### Bug Fixes
    - Description ([commit-hash])
    
    ### Performance
    - Description ([commit-hash])
    
    ### Breaking Changes
    - Description ([commit-hash])
    
  5. If CHANGELOG.md exists, prepend the new entry at the top (after the title). If it doesn't exist, create it.

  6. Show the generated changelog to the user.

<!-- Skill by Huzefa Nalkheda Wala | github.com/huzaifa525 | claude-code-optimizer -->