# Draft Release Notes

Author the committed release-notes file for a Prisma 8 release (stable or `8.0.0-rc.N`)...

- Repository: https://github.com/prisma/orm (47661 stars)
- Category: Git and review
- License: Apache-2.0
- Last updated: 2026-10-31
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add prisma/orm --skill draft-release-notes -g -a claude-code -y`
Codex: `npx skills add prisma/orm --skill draft-release-notes -g -a codex -y`
Cursor: `npx skills add prisma/orm --skill draft-release-notes -g -a cursor -y`
Gemini CLI: `npx skills add prisma/orm --skill draft-release-notes -g -a gemini-cli -y`

## Description

Author the committed release-notes file for a Prisma 8 release (stable or `8.0.0-rc.N`) by enumerating the merged PRs since the previous release `v*` tag (stable or `-rc.N`), resolving opaque `TML-NNNN:` titles via Linear context (never copied verbatim), triaging public-worthiness, and writing categorized notes, breaking changes first, into `docs/releases/v<version>.md` plus a mirrored `CHANGELOG.md` entry. Use when cutting a release, when the `publish-npm-version` skill reaches its "draft the release notes" step, when asked to "draft the release notes", "write the changelog for this release", "author docs/releases/v<x>.md", or "summarize what shipped since the last release".

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Draft release notes

This skill fires inside a release cut (stable or RC-line, both published under `latest`). The release-cutting agent runs it from the `release/<version>` worktree that [`publish-npm-version`](../publish-npm-version/SKILL.md) created, with the target version already known, and produces the committed notes file that **is** the GitHub Release body (the publish workflow ships it verbatim via `gh release create --notes-file docs/releases/v<version>.md`). There is no `--generate-notes` fallback, the file you author here is what every consumer reads.

The skill is **prose-driven**: there is no codemod or script to run. You, the agent, do the enumeration, the Linear-context lookup, the triage, and the writing directly, the same way [`record-upgrade-instructions`](../record-upgrade-instructions/SKILL.md) walks you through authoring an upgrade entry rather than running one for you.

## When to use

Run this skill when **all** of the following hold:

- A release is being cut (stable or `8.0.0-rc.N`), the target version `$NEXT` is known (computed by `publish-npm-version` step 1, e.g. `8.0.0-rc.2`).
- You are in the `release/<version>` worktree with the bumped root version and reviewed, assembled upgrade guides committed, following the [upgrade instruction lifecycle](../../upgrade-instructions/README.md).
- `docs/releases/v$NEXT.md` needs drafting or refreshing after new fragments were incorporated (the PR-mode release-notes gate, `pnpm check:release-notes --mode pr`, requires the notes file).

Do **not** run it for `-dev.N` or `-beta.N` builds: those create no GitHub Release and are not gated. Do not run it to backfill notes for an already-shipped release, the convention starts from the first release cut after it landed.

## The two hard rules

These are project requirements, not style preferences. A draft that violates either is wrong even if everything else is perfect.

### Rule 1, Never copy Linear content verbatim

The rest: https://github.com/prisma/orm/blob/HEAD/skills-contrib/draft-release-notes/SKILL.md
