AGENT SKILL

changelog-entry

Draft the changelog entry for all unreleased commits in Keep a Changelog format. Groups commits into Added, Changed, Fixed, Removed, and Security. Use before releasing a new version or when updating CHANGELOG.md.

License 许可
MIT
最近更新
2026-05-15
Stars
★ 13
Forks
1

01 前言 Front Matter

name
changelog-entry
title
changelog-entry
description
Draft the changelog entry for all unreleased commits in Keep a Changelog format. Groups commits into Added, Changed, Fixed, Removed, and Security. Use before releasing a new version or when updating CHANGELOG.md.
allowed-tools
Bash(git log *) Bash(git describe *) Bash(git tag *)

02 资源文件 1

03 SKILL.md 正文

Draft a changelog entry for the current unreleased changes.

Step 1: Find the last release tag

!git describe --tags --abbrev=0 2>/dev/null || echo "none"

If the output above is none, there are no previous tags — include all commits in the log.

Step 2: Get the commits since the last tag

If a last tag was found:

git log <last-tag>..HEAD --oneline --no-merges

If no last tag was found:

git log --oneline --no-merges

Step 3: Categorize the commits

Group the commits into Keep a Changelog sections using these rules:

  • Added: new features, new commands, new files, new endpoints
  • Changed: modifications to existing behavior, refactors, renames
  • Fixed: bug fixes, error handling improvements, incorrect behavior corrected
  • Removed: deleted features, removed flags, dropped support
  • Security: vulnerability fixes, dependency updates addressing CVEs, auth changes

Skip merge commits, version bump commits (e.g., "Bump version to 1.2.0"), and commits that only touch lock files.

If a commit is ambiguous, prefer the more specific category. If it touches multiple areas, list it under the primary one.

Step 4: Output the entry

Output only the markdown block, ready to paste into CHANGELOG.md under ## [Unreleased]. Do not include any surrounding prose.

Format:

## [Unreleased]

### Added
- Description of new feature (commit: abc1234)

### Changed
- Description of change (commit: def5678)

### Fixed
- Description of fix (commit: ghi9012)

Omit sections that have no entries. If there are no unreleased commits at all, output: No unreleased commits since the last tag.

04 同仓库更多 Skills

davila7
davila7/claude-with-skills

tag-version

Bump the package version and create an annotated git tag. Accepts a semantic version number (1.2.0) or a bump type (patch, minor, major). Does not push — use the publish skill to push. Use as part of a release workflow.

★ 13
davila7
davila7/claude-with-skills

release

Run the complete release workflow: changelog entry, version bump, git tag, and GitHub release. Invokes changelog-entry, tag-version, and publish in sequence. Use when releasing a new version of the project.

★ 13
davila7
davila7/claude-with-skills

publish

Push the current branch and all tags to origin, then create a GitHub release using the latest tag and its CHANGELOG.md entry. Use after tag-version to complete a release.

★ 13
davila7
davila7/claude-with-skills

changelog-entry

Draft the changelog entry for all unreleased commits in Keep a Changelog format. Groups commits into Added, Changed, Fixed, Removed, and Security. Use before releasing a new version or when updating CHANGELOG.md.

★ 13
davila7
davila7/claude-with-skills

auto-format-on-edit

Automatically format code files after every edit using Prettier and ESLint. Active in the background whenever Claude edits a file. Formatting is silent — no prompts, no output unless a formatter fails. Use when you want consistent formatting enforced automatically during a coding session.

★ 13
davila7
davila7/claude-with-skills

code-quality-audit

Run a comprehensive code quality audit covering security, performance, and maintainability. Use for quarterly audits, pre-release reviews, or when onboarding to a large codebase.

开发工程师
★ 13