mcpbeat Sign in

Pr Description Skill for Cursor

Write PR descriptions and release notes for the Sanity monorepo. Follows the repo's PR template with Description, What to review, Testing, and Notes for release sections. Auto-triggers when creating PRs via `gh pr create`. Use when creating pull requests, writing PR descriptions, drafting release notes, or when user mentions PR, pull request, or release notes.

1k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
6252
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/sanity-io/sanity --skill pr-description

The instruction itself

11 sections, as written by the author

PR Description & Release Notes

When creating a PR

Follow the repo's PR template. Always create PRs as drafts. All AI-agent PRs must include the 🤖 bot label.

1. Analyze the changes

Before writing, understand the full diff:

git log main..HEAD --oneline
git diff main...HEAD

2. PR title

Must follow conventional commits (CI-enforced):

type(scope): lowercase description
  • Types: feat, fix, chore, docs, refactor, test, perf, ci
  • Scope: package or area affected (groq, cli, form, schema, deps, etc.)
  • No backticks, quotes, or markdown in the title
  • Description starts lowercase

3. Write the PR body

Lead with why. Only elaborate on the non-obvious. The reviewer can read the diff — they need the context the diff can't give them. Default to terse; expand only where a reader would genuinely wonder.

Priorities for the Description section:

  • Heavy on _why_ — the motivation, the problem being solved, the constraint or incident that forced this change
  • Cover _why not_ — alternatives considered and rejected, one sentence each. This is often the most valuable part: it prevents the reviewer from suggesting a path you've already ruled out. Skip if there were no real alternatives worth mentioning
  • Light on _how_ — only call out approach when it's non-obvious, novel, or a reviewer might reasonably have picked a different path. Skip it for routine changes where the diff speaks for itself
  • Minimal _what_ — the diff shows what changed. One sentence of orientation at most; don't restate file-by-file changes the reviewer can see

Length test: if a sentence would tell the reviewer something they could deduce in 10 seconds from the diff, cut it. A good PR description is often 3–5 sentences total. Bulleted lists of "alternatives considered" should be one line per alternative, not a paragraph.

If you catch yourself writing "this PR renames X to Y" or "adds a new function Z", delete it. If you're explaining _why_ X needed to be renamed or _why_ Z exists (and why the obvious alternative wasn't chosen), keep it — but stay brief.

Use all four sections:

Description

Focus on why and why not, tersely:

  • The problem or context the diff doesn't reveal (one short paragraph)
  • Alternatives considered and why rejected (one line each, only if they were real candidates)
  • _How_ only when non-obvious or debatable
  • _What_ reduced to a one-line orientation
What to review
  • Which files/areas matter most
  • Anything tricky or non-obvious
  • Which packages are affected (this is a monorepo)
Testing
  • Tests added or modified
  • If no automated tests: how you tested and why automation wasn't practical
Notes for release

This section is used by the docs team to write release notes.

If not needed, write one of:

  • N/A — internal-only changes
  • N/A – Part of feature X — partial implementation not yet enabled
  • N/A – Internal only — tooling/chore work

If needed, write for end users and the docs team:

  • What changed from a user perspective
  • How to use it (code snippets if applicable)
  • Limitations or breaking changes

Always end this section with a --- horizontal rule. The release-notes automation stops at the first --- after the "Notes for release" heading, so the rule fences off anything appended below (Cursor Bugbot reviews, later edits) and keeps it out of the changelog.

4. Create the PR

Always create as draft and apply the 🤖 bot label. Do not mark as ready for review until CI passes and the prompter approves.

gh pr create --draft --label "🤖 bot" --title "type(scope): description" --body "$(cat <<'EOF'
### Description

[what and why]

### What to review

[guidance for reviewers]

### Testing

[tests added or manual testing explanation]

### Notes for release

[release notes or N/A]

---
EOF
)"

If the label was omitted at create time:

gh pr edit --add-label "🤖 bot"

After CI is green and the prompter approves, mark ready for review:

gh pr ready

Release notes checklist

  • [ ] Written for end users, not internal engineers
  • [ ] Includes code snippets for new APIs or changed behavior
  • [ ] Mentions breaking changes prominently
  • [ ] No unexplained jargon
  • [ ] Concise — a paragraph plus code example is ideal

Other skills for the same job

different authors, same section of the catalogue
Karpathy Guidelines
by hyyhf
×3

Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid overcomplication, make surgical changes, surface assumptions, and define verifiable success criteria.

629 tokens
Plan Writing
by ComeOnOliver
×2

Structured task planning with clear breakdowns, dependencies, and verification criteria. Use when implementing features, refactoring, or any multi-step work.

4k tokens
Modern Javascript Patterns
by ComeOnOliver
×2

Master ES6+ features including async/await, destructuring, spread operators, arrow functions, promises, modules, iterators, generators, and functional programming patterns for writing clean, efficient JavaScript code. Use when refactoring legacy code, implementing modern patterns, or optimizing JavaScript applications.

9k tokens
Modern Javascript Patterns
by ComeOnOliver
×2

Master ES6+ features including async/await, destructuring, spread operators, arrow functions, promises, modules, iterators, generators, and functional programming patterns for writing clean, efficient JavaScript code. Use when refactoring legacy code, implementing modern patterns, or optimizing JavaScript applications.

8k tokens
Contributor Pr Description
by flutter
vendor ×1

Guidelines and format for writing pull request descriptions in this repository. Use this skill whenever the user asks you to draft a pull request description, submit a PR, or update a PR description.

697 tokens
Angular Best Practices
by lingxling
×1

Angular performance optimization and best practices guide. Use when writing, reviewing, or refactoring Angular code for optimal performance, bundle size, and rendering efficiency.

4k tokens
Gh Fix CI
by christophacham
×1

Use when a user asks to debug or fix failing GitHub PR checks that run in GitHub Actions. Uses `gh` to inspect checks and logs, summarize failure context, draft a fix plan, and implement only after explicit approval. Treats external providers (for example Buildkite) as out of scope and reports only the details URL. Do NOT use for addressing PR review comments (use gh-address-comments) or general CI outside GitHub Actions.

7k tokens scripts
Angular Best Practices
by ComeOnOliver
×1

Angular performance optimization and best practices guide. Use when writing, reviewing, or refactoring Angular code for optimal performance, bundle size, and rendering efficiency.

6k tokens

How to use it

Copy the folder

Take sanity-io/pr-description from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.