Skip to content
← All skills

pr-description

Publish a pull request described entirely from the branch diff and the session thread — Before/After scenarios in plain words, no screenshots, any stack.

User-invoked — reachable only when you type it.

Quickstart

Install
npx skills add EddyVinck/skills --skill=pr-description
Update
npx skills update pr-description
Source on GitHub

What it does

pr-description publishes a pull request whose description is reconstructed from two witnesses: the diff — what changed — and the thread, the session that produced the branch — why it changed, what was decided, what was traded away. Every claim in the body must be traceable to one of the two; the skill runs nothing, drives nothing, and captures nothing to produce it, which is what makes it work in any repo on any stack.

User-visible changes become numbered Before/After scenarios in plain words; internal work goes in a trailing list — or gets promoted to Internal scenarios when the branch has no visible change at all. Each scenario folds its technical details and an honest validation note behind <details>, and “not validated” is a valid note.

When to reach for it

Prerequisites

The gh CLI must be authenticated against the repo. Nothing else — no dev server, no simulator, no browser tooling.

Two witnesses, no fabrication

The diff can say what changed but never why; the thread can say why but drifts from what actually landed. The skill forces each half to come from the source that can vouch for it, and forbids anything neither can — that’s the whole defence against the confident-but-invented PR description. The Validation block is the sharpest edge of this: it reports only what the thread shows was checked, so it can never claim testing that didn’t happen.

It’s working if

Where it fits

This is the ship step of the main flow — the last link, after the work is built — and the stack-agnostic default among three siblings: pr-description-react-native and pr-description-web do the same job where a screenshot can serve as evidence, because they can drive the running app. For the map of the whole set, see ask-eddy.