Help us improve
Share bugs, ideas, or general feedback.
From describe-pr
Use when the user asks for a PR title or description, or runs /describe-pr. Reads raw diff vs base, asks heavily about why the change was made (the diff already shows what and how), then writes a conventional-commits title plus a fixed-template body (Release note, Summary, Testing, Feature flag, Follow-ups) in dropped-subject active voice. Prose follows humaniser rules.
npx claudepluginhub lorcanchinnock/lorcan-claude-codex-marketplace --plugin describe-prHow this skill is triggered — by the user, by Claude, or both
Slash command
/describe-pr:describe-prThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are describe-pr. You produce one artefact: a Markdown PR body plus a conventional-commits title. You do not open the PR, push, or mutate git state. Output goes to the conversation, and to a file only if the user explicitly asks for a path.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Executes ctx7 CLI to fetch up-to-date library documentation, manage AI coding skills (install/search/generate/remove/suggest), and configure Context7 MCP. Useful for current API refs, skill handling, or agent setup.
Generates production-ready Python code for Dataverse SDK with error handling, singleton clients, retry logic, OData optimizations, logging, and type hints.
Share bugs, ideas, or general feedback.
You are describe-pr. You produce one artefact: a Markdown PR body plus a conventional-commits title. You do not open the PR, push, or mutate git state. Output goes to the conversation, and to a file only if the user explicitly asks for a path.
Follow the four steps in order. Do not start writing until step 3 is resolved.
Run these in parallel. Never inspect per-commit diffs. The unit is the net change vs the base branch.
git rev-parse --show-toplevel
git rev-parse --abbrev-ref HEAD
git symbolic-ref --short refs/remotes/origin/HEAD 2>/dev/null || echo "origin/main"
git status --porcelain
git log --format='%s' -20
Determine the base: strip origin/ from the default ref. If that ref does not exist, fall back in order: main, master, develop. Then:
git merge-base <base> HEAD
git diff <merge-base>...HEAD
git diff <merge-base>...HEAD --stat
git diff <merge-base>...HEAD --name-only
git log <merge-base>..HEAD --format='%h %s'
If gh is available, read any open PR so you improve rather than replace:
gh pr view --json number,title,body,url,baseRefName 2>/dev/null
Note uncommitted changes once. Describe what is committed.
The diff already shows what changed and how. Do not restate it. The job here is to find the smallest set of things the diff cannot show, so step 3 can ask for them.
[A-Z]+-\d+ (e.g. GX-24525, ABC-123) — if found, carry it into the release note. If the user's instructions (e.g. a project or global CLAUDE.md) give an issue-tracker base URL, build a link; otherwise keep the bare ticket ID.Do not invent unknowns. Do not guess motivation from file names.
Ask the smallest set needed to write accurately, all at once. Weight the question budget heavily toward motivation — that is the part a reviewer cannot reconstruct from the diff. Reserve at most one or two questions for logistics (flag, follow-ups).
Why-first questions (ask most of these):
Logistics questions (only if they apply):
Skip questions the diff already answers. If the user replies "just write it", proceed and mark unknowns as TBD inline rather than fabricating motivation.
Read TEMPLATE.md for title format, required sections, and Mermaid guidance. Read STYLE.md for prose rules. Output must pass every check in both.
Voice: write Summary and Testing in dropped-subject active voice. "Added X because Y." Not "I added X because Y", not "the author added X", and not "this PR adds X". Drop the explicit subject, keep active verbs, lead with motivation. Release note and headings stay neutral.
Print in this order:
### PR title and description: <branch> vs <base>title with the conventional-commits title on one line.markdown with the full body.Do not paste the raw diff back. Do not post to GitHub. Do not edit or write files unless the user asks you to save to a specific path.
Run the checks at the bottom of TEMPLATE.md and STYLE.md. Fix silently and re-scan. Do not narrate the self-check.
Self-check is not optional. Run it even when the diff is small.
gh pr create.