changelog-writing

Write and maintain changelogs following the Keep a Changelog convention. Use when creating a CHANGELOG.md, adding entries for a release, or reviewing changelog format and completeness.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "changelog-writing" with this command: npx skills add kjanat/skills/kjanat-skills-changelog-writing

Changelog Writing

Write changelogs for humans, not machines. Follow the Keep a Changelog convention.

Format Rules

  • File: CHANGELOG.md at project root
  • Date format: ISO 8601 (YYYY-MM-DD)
  • Latest version first (reverse chronological)
  • One entry per version, every version documented
  • Follow Semantic Versioning
  • Version headings are linkable (comparison URLs at bottom)

Change Categories

Group changes under these headings, in this order:

CategoryUse for
AddedNew features
ChangedChanges to existing functionality
DeprecatedFeatures marked for future removal
RemovedFeatures removed in this release
FixedBug fixes
SecurityVulnerability patches

Omit empty categories. Never invent new category names.

Unreleased Section

Always keep an ## [Unreleased] section at the top:

## [Unreleased]

### Added

- New user profile endpoint.

At release time, move Unreleased entries into a new versioned heading.

Version Heading Format

## [1.2.0] - 2025-08-15

Yanked releases append [YANKED]:

## [1.1.0] - 2025-07-01 [YANKED]

Comparison Links

At the bottom of the file, define diff links for every version:

[Unreleased]: https://github.com/org/repo/compare/v1.2.0...HEAD
[1.2.0]: https://github.com/org/repo/compare/v1.1.0...v1.2.0
[1.1.0]: https://github.com/org/repo/releases/tag/v1.1.0

Anti-Patterns

Don'tWhy
Dump git log as changelogNoise: merge commits, docs changes, typos
Skip deprecation noticesUsers can't prepare for breaking changes
Use regional date formatsAmbiguous (01/02/03). Use ISO 8601
Document only some changesPartial changelog is worse than none
Use GitHub Releases aloneNon-portable, less discoverable than a file

Writing Style

  • Write entries as imperative statements from the user's perspective
  • Focus on what changed for the user, not implementation details
  • Be specific: "Add dark mode toggle in settings" not "Update UI"
  • Group related changes into a single entry when appropriate

Reading Order

TaskFiles to Read
Create new CHANGELOGSKILL.md + example.md
Add release entriesSKILL.md (categories)
Review formatSKILL.md (format rules)
See full exampleexample.md

In This Reference

FilePurpose
example.mdComplete example changelog

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

uv-versioning

No summary provided by upstream source.

Repository SourceNeeds Review
General

build-skill

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

github-script

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

github-service-containers

No summary provided by upstream source.

Repository SourceNeeds Review