Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
borghei avatar

Release Notes

  • 87 installs
  • 451 repo stars
  • Updated July 21, 2026
  • borghei/claude-skills

Release Notes Expert is a Claude skill that translates technical changes into clear, user-benefit-oriented release notes and changelogs tuned to the target audience.

About

Release Notes Expert turns raw technical changes (tickets, changelogs, git logs, PRDs) into clear, user-benefit-oriented release notes. A PM or developer uses it to announce product releases, summarize sprint demos, maintain a changelog or prepare customer communications. It classifies each change into five categories, rewrites entries to lead with the outcome, adjusts tone by audience, and ships a release_notes_generator.py.

  • Classifies every change into features, improvements, fixes, breaking changes or deprecations
  • Rewrites technical changes to lead with the user benefit
  • Adjusts tone for B2B, consumer, developer or internal audiences

Release Notes by the numbers

  • 87 all-time installs (skills.sh)
  • Ranked #120 of 248 Release Management skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

release-notes capabilities & compatibility

Capabilities
release orchestrator · changelog generation · documentation
Works with
jira · github
Use cases
documentation · copywriting · project management
Pricing
Free
From the docs

What release-notes says it does

Structured release notes creation that translates technical changes into user-benefit-oriented communication.
SKILL.md
Every entry must lead with the benefit to the user, not the technical change.
SKILL.md
Assign every change to exactly one category:
SKILL.md
npx skills add https://github.com/borghei/claude-skills --skill release-notes

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs87
repo stars451
Last updatedJuly 21, 2026
Repositoryborghei/claude-skills

What it does

Turn tickets, git logs and changelogs into clear, user-benefit-oriented release notes tuned to the audience.

Who is it for?

Turning tickets and git logs into audience-tuned release notes and changelogs.

Skip if: Automated version bumping or deployment gating (use release-orchestrator).

When should I use this skill?

Announcing a product release, summarizing a sprint demo, or maintaining a changelog.

What you get

Audience-tuned release notes that lead with user benefit and separate breaking changes and deprecations.

  • user-facing release notes
  • changelog

By the numbers

  • 5 change categories
  • ships release_notes_generator.py

Files

SKILL.mdMarkdownGitHub ↗

Release Notes Expert

Overview

Transform raw technical changes -- tickets, changelogs, git logs, PRDs -- into clear, user-benefit-oriented release notes. This skill ensures every release communicates value to the right audience in the right tone.

When to Use

  • Product Releases -- Announcing new versions to customers, partners, or internal stakeholders.
  • Sprint Demos -- Summarizing what shipped for sprint review audiences.
  • Changelog Maintenance -- Keeping a running log of changes across releases.
  • Customer Communication -- Preparing release announcements for email, in-app, or documentation.

Methodology

Step 1: Gather Raw Input

Collect all changes from the release cycle:

  • Jira/Linear tickets -- Completed stories, bugs, and tasks
  • Git log -- Merge commits since last release tag
  • PRD references -- Feature specs that shipped
  • Hotfix records -- Emergency fixes deployed between releases

Step 2: Classify Each Change

Assign every change to exactly one category:

CategoryDefinitionExample
New FeaturesNet-new capabilities that did not exist beforeNew export-to-PDF option
ImprovementsEnhancements to existing functionalityFaster dashboard loading
Bug FixesCorrections to broken or incorrect behaviorFixed login redirect loop
Breaking ChangesChanges that require user action to adaptAPI v2 replaces v1 endpoints
DeprecationsFeatures scheduled for future removalLegacy CSV import will be removed in v4.0

Classification rules:

  • If a change adds something entirely new, it is a New Feature.
  • If it makes something existing better (faster, easier, more reliable), it is an Improvement.
  • If it fixes something that was wrong, it is a Bug Fix.
  • If users must change their behavior, configuration, or integration, it is a Breaking Change.
  • If a feature still works but will be removed later, it is a Deprecation.

Step 3: Rewrite for User Benefit

The most critical step. Every entry must lead with the benefit to the user, not the technical change.

Rewriting principles:

1. Lead with the outcome. What can the user do now that they could not before, or what is better for them? 2. Use plain language. Avoid internal jargon, code references, or implementation details. 3. Keep it to 1-3 sentences. One sentence for minor items, up to three for significant features. 4. Include context when needed. If users need to take action, tell them exactly what to do.

Before and after examples:

Technical (Bad)User-Benefit (Good)
Implemented Redis caching layer for dashboard queriesDashboards now load up to 3x faster
Refactored authentication module to use OAuth 2.0 PKCE flowSign-in is now more secure and works reliably across all browsers
Fixed null pointer exception in report export handlerReport exports no longer fail when date ranges include empty days
Migrated user preferences API from v1 to v2 schemaAction required: Update your API calls to use the new /v2/preferences endpoint by April 30. See migration guide.
Added feature flag for beta dashboardYou can now opt into the redesigned dashboard from Settings > Beta Features

Red flags that an entry needs rewriting:

  • Mentions a class name, function, or library
  • Starts with "Refactored," "Migrated," or "Updated" without stating impact
  • Uses acronyms the target audience would not know
  • Describes what the team did instead of what the user gains

Step 4: Adjust Tone for Audience

AudienceToneStyle Notes
B2B / EnterpriseProfessional, preciseEmphasize reliability, security, compliance. Avoid casual language.
ConsumerFriendly, conversationalUse "you" and "your." Celebrate new features. Keep it light.
Developer / APITechnical, directInclude endpoint names, SDK versions, code snippets. Be specific.
InternalDetailed, context-richInclude ticket IDs, team names, technical details as needed.

Step 5: Assemble the Release Notes

Use the output template below. Include only categories that have entries -- do not show empty sections.

Output Template

# [Product Name] v[X.Y.Z] Release Notes

**Release Date:** [YYYY-MM-DD]

---

## New Features

- **[Feature Name]** -- [1-3 sentence description of user benefit]. ([TICKET-ID])

## Improvements

- **[Improvement Name]** -- [1-2 sentence description of what is better]. ([TICKET-ID])

## Bug Fixes

- **[Bug Fix Name]** -- [1 sentence describing what was broken and that it is now fixed]. ([TICKET-ID])

## Breaking Changes

> **Action Required:** The following changes require updates on your end.

- **[Change Name]** -- [Description of what changed and exactly what the user must do]. ([TICKET-ID])

## Deprecations

> **Planned Removal:** The following features will be removed in a future release.

- **[Feature Name]** -- [What is being deprecated and when it will be removed. Recommend alternative if available]. ([TICKET-ID])

---

**Full changelog:** [link]
**Questions?** [support link or contact]

Python Tool

Use scripts/release_notes_generator.py to generate formatted release notes from structured input.

# Generate from JSON input
python scripts/release_notes_generator.py --input changes.json --product-name "Acme App" --version "2.5.0"

# Run with demo data
python scripts/release_notes_generator.py --demo --product-name "Acme App" --version "1.0.0"

# Output as JSON instead of markdown
python scripts/release_notes_generator.py --input changes.json --format json --product-name "Acme App" --version "2.5.0"

See scripts/release_notes_generator.py --help for full usage.

Integration with Other Skills

  • Use summarize-meeting/ to capture release planning discussions.
  • Use job-stories/ or wwas/ to trace features back to their original motivation.
  • Pair with ../senior-pm/ for stakeholder communication planning around major releases.

Troubleshooting

SymptomLikely CauseResolution
Tool flags too many entries as "technical language"TECHNICAL_PATTERNS regex is broad, catching common words like "update" or "add"Review the flagged entries; the tool provides suggestions, not mandates -- ignore false positives for user-facing descriptions
All entries classified as same typeInput JSON uses wrong type values or inconsistent casingUse exact lowercase types: feature, improvement, bugfix, breaking, deprecation
Empty sections appear in outputNo entries of that type exist but template still renders the sectionThe tool only renders sections with entries; empty sections indicate a data issue in input
Breaking changes not highlighted prominentlyEntries marked as improvement instead of breakingReview classification rules: if users must change behavior, config, or integration, it is breaking, not improvement
Release notes sound like commit messagesDescriptions written from developer perspective, not user perspectiveApply the rewriting principles: lead with outcome, use plain language, 1-3 sentences per entry
--demo flag requires --product-name and --versionThese are required arguments regardless of input sourceAlways provide both: --demo --product-name "App" --version "1.0.0"
JSON output missing rewriting suggestionsNo entries triggered technical language detection patternsThis is expected behavior; suggestions only appear when TECHNICAL_PATTERNS match entry descriptions

Success Criteria

  • Every release has structured notes published within 24 hours of deployment
  • All entries lead with user benefit, not technical implementation details
  • Breaking changes include explicit migration instructions with deadlines
  • Deprecations include removal timeline and recommended alternatives
  • Technical language flags reviewed and addressed before publication
  • Release notes tone matches the target audience (B2B/consumer/developer/internal)
  • Entries traceable to tickets via ticket_id for audit and context

Scope & Limitations

In Scope:

  • Structured release note generation from JSON input with 5 entry categories
  • Automatic technical language detection with rewriting suggestions
  • Markdown and JSON output formatting with category grouping
  • Audience tone guidance (B2B, consumer, developer, internal)
  • Classification rules for New Features, Improvements, Bug Fixes, Breaking Changes, and Deprecations

Out of Scope:

  • Automatic extraction of changes from git history (see sprint-retrospective/ for git analysis)
  • Jira/Linear ticket integration for pulling completed stories (manual JSON input required)
  • Changelog maintenance across multiple releases (this tool generates per-release notes)
  • Distribution to email, in-app, or documentation channels (output is markdown/JSON for further processing)

Important Caveats:

  • The rewriting suggestions are pattern-based heuristics. They catch common technical language but cannot assess whether a description truly communicates user benefit.
  • Semantic versioning alignment is the user's responsibility. The tool does not validate that version numbers follow semver conventions relative to the change types present.
  • Breaking changes require special care. Always include: what changed, what the user must do, and by when. Vague breaking change notes erode user trust.

Integration Points

IntegrationDirectionDescription
sprint-retrospective/Receives fromSprint commit data and type distribution inform what changes to include
senior-pm/ComplementsStakeholder communication plans guide release note audience and tone
execution/create-prd/Receives fromPRD feature descriptions (Section 7) become release note entry drafts
scrum-master/Receives fromSprint review outputs identify what shipped and needs documentation
summarize-meeting/Receives fromRelease planning meeting summaries capture context for release notes
job-stories/ / wwas/Receives fromUser story descriptions inform user-benefit framing of entries

Tool Reference

release_notes_generator.py

Generates formatted release notes from structured JSON input. Groups entries by category, formats into markdown or JSON, and flags entries that may need user-benefit rewriting.

FlagTypeDefaultDescription
--inputstring(optional)Path to JSON file containing release entries
--demoflagoffRun with built-in demo data (8 entries across all types)
--product-namestring(required)Product name for the release notes header
--versionstring(required)Version string (e.g., 2.5.0)
--formatchoicetextOutput format: text (markdown) or json
--datestringtodayRelease date in YYYY-MM-DD format

Input JSON schema:

{
  "entries": [
    {
      "title": "Feature Name",
      "description": "User-benefit description (1-3 sentences)",
      "type": "feature|improvement|bugfix|breaking|deprecation",
      "ticket_id": "PROJ-123 (optional)"
    }
  ]
}

References

  • See references/release-notes-guide.md for best practices, audience guidance, and examples.
  • See assets/release_notes_template.md for a ready-to-use document template.

Related skills

FAQ

What categories does it classify changes into?

New Features, Improvements, Bug Fixes, Breaking Changes and Deprecations, each change assigned to exactly one.

How should each entry be written?

Lead with the user benefit, use plain language, keep it to 1-3 sentences, and tell users exactly what to do when action is required.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.