New to Claude Skills? Learn how to install them →

mastra-ai on GitHub

PR Explainer

Free

Generate clear HTML reviews for pull requests.

by mastra-ai27.1k stars on mastra-ai/mastra
5 views
Updated Aug 10, 2026
Get this skill

Free · Opens the source repo

What PR Explainer does

PR Explainer is a tool designed to create a self-contained HTML page that provides a comprehensive overview of changes made in a pull request (PR). This skill is particularly useful for developers and teams looking to enhance the review process by making it more accessible and understandable. Instead of relying on raw diffs or lengthy commit messages, PR Explainer organizes information in a structured manner, helping reviewers grasp the context and significance of changes quickly.

The process begins with gathering essential details about the PR, such as its title, number, branch, and the range of commits involved. It encourages users to thoroughly understand the changes before crafting the HTML document. The skill emphasizes a logical flow in explaining the PR, starting with the problem it addresses, followed by the system context, and then detailing the before-and-after scenarios of the code. This approach ensures that reviewers are not overwhelmed by technical jargon or complex diffs but instead receive a clear narrative about the changes.

Moreover, PR Explainer promotes the use of visuals and focused code snippets to aid comprehension. By including diagrams and concise explanations for key code changes, it helps reviewers visualize the impact of the modifications. This structured documentation not only facilitates a smoother review process but also serves as a valuable reference for future discussions about the codebase.

Ultimately, PR Explainer is aimed at developers and teams who want to improve their pull request reviews by providing a clear, informative, and engaging way to present changes. This skill is particularly beneficial in collaborative environments where multiple reviewers may need to understand complex changes without diving deep into the full diff.

When to use it

Use this skill when you need to create an informative HTML summary for a pull request that explains the changes in an approachable manner.

When not to use it

This skill may not be suitable for very simple pull requests where a full diff review suffices or when a quick review is needed without detailed context.

What you can build with it

Creating a Detailed PR Review

When preparing for a code review, use PR Explainer to generate an HTML page that summarizes the changes, making it easier for team members to understand the modifications.

Onboarding New Team Members

Utilize PR Explainer to help new developers grasp the context of recent changes in the codebase, providing them with a structured overview of PRs.

Documenting Code Changes for Future Reference

After merging a PR, use the generated HTML page as a reference for future discussions about the code, ensuring that the rationale behind changes is documented.

How to install PR Explainer

View source

1. Install with the skills CLI

npx skills add mastra-ai/mastra/pr-explainer --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by mastra-ai

PR Explainer

Create a local, self-contained HTML page that teaches a reviewer the PR story: what changed, why it matters, how it works, how it fits into the system, and how it was verified.

Required workflow

  1. Understand the PR before writing HTML

    • Collect PR title/number, branch, link if available, base branch, commit range, changed files, and verification already performed.
    • Inspect the current state with git status --short.
    • Inspect recent commits with git log --oneline -n 10.
    • Inspect scope with git diff <base>...HEAD --stat and git diff <base>...HEAD.
    • If one commit carries the main change, inspect it with git show --stat <commit> and git show <commit>.
  2. Find the explanation path

    • Do not explain files in raw diff order.
    • Teach the change in this order when possible:
      1. problem,
      2. system context,
      3. before/after data or control flow,
      4. key code changes,
      5. proof from tests/builds/manual checks,
      6. reviewer takeaway.
    • Classify changed files as core behavior, plumbing/integration, tests, release metadata, or incidental noise.
    • Highlight only files that help explain the PR.
  3. Write for approachability

    • Use plain language, short sections, concrete before/after examples, small focused snippets, diagrams, tables, and callouts.
    • Explain the problem before implementation details.
    • Define acronyms or package-specific terms before using them.
    • Avoid dumping the full diff or assuming the reviewer already knows internal context.
  4. Create a local self-contained HTML file

    • Put generated files in .pr-review/.
    • Use one HTML file containing all CSS and content.
    • Do not commit .pr-review/ by default.
    • Prefer repo ignore rules or .git/info/exclude so generated review pages stay out of commits.

Recommended HTML structure

Use this structure unless the PR clearly needs a different teaching order:

  1. Hero

    • PR number/title, one-sentence summary, branch/link/status.
    • Small metrics: files changed, tests added, packages affected.
  2. Problem

    • Previous behavior.
    • Why it was wrong, confusing, missing, or risky.
  3. System Context

    • Where the change sits in the product or architecture.
    • Upstream callers, downstream behavior, and why this is the right layer.
    • Behavior intentionally not changed.
  4. Before/After Flow

    • Visual old path vs. new path when the PR changes flow, state, ownership, permissions, request handling, data transformation, or component relationships.
  5. Code Walkthrough

    • Step-by-step explanation path.
    • Focused diffs for important files only.
    • Explain what each snippet accomplishes and why it is necessary.
  6. Tests / Verification

    • Tests added or updated.
    • Commands run for tests, build, typecheck, lint, or manual verification.
    • Known unrelated warnings or failures, if any.
  7. Reviewer Takeaway

    • The shortest useful mental model of the PR.
    • What the reviewer should focus on while reviewing the actual diff.

Diagrams

Add diagrams when they reduce cognitive load. Prefer simple HTML/CSS diagrams over external dependencies.

Good diagram types:

  • Request flow: Client → Server → Handler → Service → Result
  • Before/after path: broken path vs. fixed path
  • Ownership map: package/module responsibility boundaries
  • Data transformation: input → normalized form → output
  • State machine: pending → running → complete/error

Each diagram must answer: “What does this help the reviewer understand faster?”

Focused diff snippets

Show snippets along the explanation path, not giant patches. Each important snippet should include:

  • file path,
  • relevant added/removed lines only,
  • visual styling for additions/removals,
  • a short explanation,
  • connection back to the PR story.

Use this pattern:

<div class="diff">
  <div class="diff-title">packages/example/src/file.ts</div>
  <pre>
<span class="del">- old behavior</span>
<span class="add">+ new behavior</span>
  </pre>
</div>

A reviewer should understand the PR without opening GitHub, but the page should not replace the final full diff review.

Verification requirements

End with proof. Include exact commands when available, for example:

pnpm --filter @scope/package test path/to/test.ts -- --run
pnpm turbo build --filter ./packages/package

If verification was not run, say so clearly and list the recommended commands.

Final checklist

Before calling the page done, confirm it has:

  • clear one-sentence summary,
  • problem statement,
  • before/after explanation,
  • broader system context,
  • visual diagram where useful,
  • step-by-step code walkthrough,
  • focused diffs with file paths,
  • tests and verification commands,
  • reviewer takeaway,
  • self-contained HTML/CSS,
  • stored in .pr-review/,
  • not staged or committed unless explicitly requested.

Default output

When asked to create a PR explainer, produce or update a .pr-review/*.html file and summarize:

  1. output path,
  2. PR story covered,
  3. key sections included,
  4. verification evidence included,
  5. whether .pr-review/ remains untracked or excluded.

Frequently asked questions about PR Explainer

Similar skills