Skip to content
Skills Library
Programming · Learning & explanation

diff-explain

/diff-explain

Use when you want a one-paragraph plain-English summary of what a diff does. Activates on "summarize this diff", "what does this PR do", "explain this branch", or when pointed at a PR URL or local branch.

Licence
MIT
Last repository change
25.10.2026

Assessment and security

90/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content25 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
1
Scripts
0
HTML comments
0
URLs in SKILL.md
0
Deprecation

No signals detected. Repository changed on 25.10.2026, without references to retired models or APIs.

Licence

MIT, open: use and modify while retaining author attribution.

What it does and when to use it

Use when you want a one-paragraph plain-English summary of what a diff does. Activates on "summarize this diff", "what does this PR do", "explain this branch", or when pointed at a PR URL or local branch.

Triggers from the description

summarize this diffwhat does this PR doexplain this branch
Original author description

Use when you want a one-paragraph plain-English summary of what a diff does. Activates on "summarize this diff", "what does this PR do", "explain this branch", or when pointed at a PR URL or local branch.

How it works

  1. Live context (when diffing a local branch)
  2. When to activate
  3. Steps
  4. Rules
  5. Output
Original SKILL.md headings · 43 lines, 346 words
SKILL.md preview
---
name: diff-explain
description: Use when you want a one-paragraph plain-English summary of what a diff does. Activates on "summarize this diff", "what does this PR do", "explain this branch", or when pointed at a PR URL or local branch.
allowed-tools: Bash(git diff:*) Bash(gh pr diff:*) Bash(gh pr view:*) Bash(git log:*)
---

# diff-explain

## Live context (when diffing a local branch)

- Current branch diff stat: !`git diff $(git merge-base HEAD origin/main 2>/dev/null || git merge-base HEAD main 2>/dev/null || echo HEAD)...HEAD --stat 2>/dev/null || echo "no local diff vs main"`

## When to activate

- User pastes a diff and asks "what does this do?" / "summarize" / "explain".
- User shares a PR link or branch name and wants a quick read before reviewing.
- Reviewing unfamiliar changes before merge.

Do NOT activate when the user is asking for a detailed line-by-line review -- that's a different task.

## Steps

1. **Get the diff.**
   - PR link: `gh pr diff <url-or-number>`
   - Local branch: `git diff <base>...HEAD` (default base: `main` or `master`)
   - Pasted: use what the user pasted.
2. **Read it fully.** Don't skim the first 50 lines and guess.
3. **Group by concern.** Even if the diff touches many files, most diffs have 1-3 concerns (a bug fix, a rename, a new feature). Name each concern in plain language.
4. **Write ONE paragraph.** 3-5 sentences covering:
   - What changed (the concern, not the files).
   - Why it likely changed (if the commit message / PR title / linked issue says).
   - What risk it introduces (behavior change, API change, DB migration, dependency bump).
5. **Optional risk line.** If one specific thing deserves attention before merge, append one line starting with `Watch out for:`.

## Rules

- No file-by-file walk. Group by concern, not by path.
- No bullet lists. Prose only.
- If the diff is large (>500 lines), say so in the first sentence and narrow to the top 2-3 concerns instead of trying to cover everything.
- Don't speculate about business motivation beyond what commits, PR title, or linked issue state.
- **Flag real problems.** Suspected bugs, security issues, missing tests, or breaking API changes go in the summary or in the "Watch out for" line. Don't paper over them.

## Output

One paragraph. Optional single-line `Watch out for: ...` trailer.

No preamble ("Here's a summary of..."). Lead with the answer.

Versions

The database has no other skills named diff-explain.

Database snapshot: 13.11.2026 · package version ae12945351ea (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 100explain-this-pr
    Takes a GitHub PR URL or the current branch and writes a plain-English explanation of what it does and why, then posts it as a PR comment. Use when asked to explain a PR, summarize a pull request, write a plain-English description of a PR, add a summary comment to a PR, or…
  • 100summarize-diff
    Summarizes a git diff in simple language: what changed and why it matters. Use when the user asks to summarize a diff, explain current changes, or describe what a branch or working tree changed.
  • 100explain-diff
    USE WHEN about to open a PR, when teammate asks "what's in this diff?", or when returning to a branch and needing self-orientation. Three modes: `--for pr|review|self`. Reads `git diff HEAD` (or passed range), returns 3–5 bullet plain-English narration. Read-only — defers…
  • 100explain
    Explain a pull request, branch, commit range, or current diff as an interactive top-down walkthrough, a short overview and part map first, then one part at a time, pausing for questions between parts. Use when the user invokes /explain, asks what a PR or branch does, or wants…
  • 100review-github-pr
    Review a GitHub pull request by summarizing its diff and key design decisions. Use when the user wants to review a PR, understand changes in a branch, or get a code review summary. Trigger keywords - review PR, review pull request, summarize PR, summarize diff, code review,…
  • 90review-change
    Review one change (a pull request, a diff, a branch) the way the factory's review stage does, grounded in the warranting library, and end with a plain-words sign-off sheet for someone who doesn't read code. Use when someone asks to review a change before it merges, asks whether…

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.