release-notes

Solid

Rewrite a moraine GitHub release body in the house format — one-sentence pitch, install block, usage-focused "what's new" sections with PR links and optional screenshots, a platform-support table, upgrade notes, and a single deduped auto-generated changelog at the bottom. Use when the user says "/release-notes v0.4.2", "polish the v0.4.2 release notes", or asks to prepare release notes for a tag. NOT auto-invoked by the model.

AI & Automation 117 stars 23 forks Updated 3 weeks ago Apache-2.0

Install

View on GitHub

Quality Score: 82/100

Stars 20%
69
Recency 20%
90
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# release-notes You are rewriting a GitHub release body in moraine's house format. The input is a tag (e.g. `v0.4.2`); the output is an updated release body published via `gh release edit <tag> --notes-file <path>`. Your goal is **usage-focused, not commit-focused**. A reader skimming the release page should understand in 30 seconds: how do I install this, what new thing can I do with it, and am I supposed to do anything when I upgrade? ## Usage `/release-notes v0.4.2` — rewrite the v0.4.2 release body. If the tag doesn't exist on GitHub yet, stop and explain. Do not create a release; the release is cut by `.github/workflows/release-moraine.yml` on tag push. ## Process ### 1. Gather context ```bash # Current (auto-generated) body. It's usually duplicated 3-6× because the # release matrix runs softprops/action-gh-release from each target job, each # time with generate_release_notes: true. You will dedupe in step 3. gh release view "$TAG" --json body -q .body > /tmp/release-body.current.md # Previous release tag, for the compare link and upgrade section. prev_tag="$(gh release list --limit 20 --json tagName,isDraft,isPrerelease -q \ '[.[] | select(.isDraft==false and .isPrerelease==false and .tagName!=env.TAG) | .tagName] | .[0]')" # Full list of PRs merged since the previous tag, for context. gh pr list --state merged --search "merged:>=<prev-tag-date>" --json number,title,url # or simpler — trust the auto-generated list and just read it. ``` Also read: - `script...

Details

Author
eric-tramel
Repository
eric-tramel/moraine
Created
6 months ago
Last Updated
3 weeks ago
Language
Rust
License
Apache-2.0

Similar Skills

Semantically similar based on skill content — not just same category