Skip to main content
command

changelog — Claude Code command: what it does, how to install

Generates a structured changelog from recent git commit history. It groups changes by date and category, formatting user-facing release notes in Markdown.

Install into Claude Code · Manually: put the files in place All methods and platforms ↓
.claude/commands/changelog.md
Open on GitHub

What changelog does

Execution begins by resolving the repository origin via git remote get-url origin. If remote context is missing, the command stops and asks whether the repository is local-only or has a remote URL. When a remote URL exists, commit hashes turn into clickable links. Plain hashes remain for local repositories.

Commits from the last 7 days are grouped daily, while older commits aggregate by week. The tool filters messages by keywords into distinct categories: features, bug fixes, refactoring, documentation, configuration, dependencies, and breaking changes. Breaking changes receive dedicated notes with migration guidance.

Output focuses on user-facing descriptions rather than technical noise. Related commits are merged, while terminology is aligned directly with the project README.

What it helps with

  • build clean release notes from recent git commits
  • categorize commit logs by features, fixes, and dependencies
  • highlight breaking changes alongside migration guidance
  • link commit hashes to remote repository URLs

Example prompts for the agent

  • /changelog
  • /changelog for the past week
  • Generate a changelog from recent commits categorized by change type

How to install changelog

Manually: put the files in place

.claude/commands/changelog.md

Call it with /changelog. For all projects use ~/.claude/commands/

Questions about changelog

How to install changelog in Claude Code?

Place the prompt file into .claude/commands/changelog.md. For GitHub Copilot, save it as .github/prompts/changelog.prompt.md.

What does the changelog command do?

It inspects git commit history, groups entries by date ranges and categories, and outputs formatted Markdown release notes.

How does it handle repositories without a remote URL?

The command asks whether the project is local-only and renders raw commit hashes without Markdown hyperlinks if no URL is provided.

Source text

changelog.md · MIT
---
description: Generate a structured changelog from recent git commits, categorized by change type
---

# Deep Wiki: Changelog Generation

Analyze the git commit history of this repository and generate a structured changelog.

## Source Repository Resolution (MUST DO FIRST)

Before generating any changelog, resolve the source repository context:

1. **Check for git remote**: Run `git remote get-url origin`
2. **Ask the user**: _"Is this a local-only repository, or do you have a source repository URL?"_
   - Remote URL → store as `REPO_URL`, link commit hashes: `[abc1234](REPO_URL/commit/abc1234)`
   - Local → use plain commit hashes
3. **Do NOT proceed** until resolved

## Process

1. Examine recent git commits (messages, dates, authors)
2. Group by date: daily for last 7 days, aggregated weekly for older
3. Classify each commit into categories
4. Generate concise, user-facing descriptions using project terminology from README

## Categories

| Emoji | Category | Signal Keywords |
|-------|----------|----------------|
| 🆕 | New Features | `feat`, `add`, `new`, `implement`, `introduce` |
| 🐛 | Bug Fixes | `fix`, `bug`, `patch`, `resolve`, `hotfix` |
| 🔄 | Refactoring | `refactor`, `restructure`, `reorganize`, `clean` |
| 📝 | Documentation | `docs`, `readme`, `comment`, `jsdoc`, `docstring` |
| 🔧 | Configuration | `config`, `env`, `setting`, `ci`, `build` |
| 📦 | Dependencies | `deps`, `upgrade`, `bump`, `package`, `lock` |
| ⚠️ | Breaking Changes | `breaking`, `BREAKING`, `migrate`, `deprecate` |

## Output

For each time period, output:

```markdown
## [Date or Date Range]

**[Summary Title]**

[1-2 sentence overview]

### 🆕 New Features
- [Change description]

### 🐛 Bug Fixes
- [Change description]

### ⚠️ Breaking Changes
- [Change description with migration notes]
```

Focus on **user-facing changes**. Merge related commits. Highlight breaking changes prominently.

$ARGUMENTS

© microsoft · MIT · microsoft/skills

Similar slash commands

All slash commands for Git and GitHub →

From the same set242

The whole set →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor