Reviewable git hygiene for work you're about to commit or open a PR for.

MITAuto-check passedDevelopment

Install Explainer

skills CLI
$ npx skills add ccplugins/awesome-claude-code-plugins --skill explainer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ccplugins/awesome-claude-code-plugins explainer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ccplugins/awesome-claude-code-plugins.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/bullpen/skills/explainer .claude/skills/explainer && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
explainer
GitHub stars
967
Token cost
~1.6k tokens
SKILL.md length
910 words
Files
1
Skills in repo
68
Repo updated
First seen
Licence
MIT

At a glance

Reviewable git hygiene for work you're about to commit or open a PR for.

  • Works in 5 steps: Split by logical change. One commit =… → Order the story. Sequence commits so… → Say why in the message. The diff already… → …
  • The user says explainer
  • SKILL.md covers When it fires, The mechanism, Rules and Output, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Explainer is an agent skill from ccplugins/awesome-claude-code-plugins. Reviewable git hygiene for work you're about to commit or open a PR for. Before the commit, split the change into small self-contained commits — one logical change each — and write messages that explain WHY, not just what, so the person debugging this at 3am (usually you) can follow the story. Structure the diff so a reviewer reads it top to bottom and understands. Supports intensity levels: lite, full (default), ultra. Use whenever the user says "explainer", "commit this", "make a PR", "clean up the history"…

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Pull requests and Commit messages. It works with Git. The repository describes itself as: Awesome Claude Code plugins — a curated list of slash commands, subagents, MCP servers, and hooks for Claude Code. The licence is MIT.

When your agent uses it

  • The user says explainer
  • Clean up the history
  • Write the commit message
  • Ships non-trivial work to review

Example prompts

  • “explainer”
  • “commit this”
  • “make a PR”
  • “/explainer”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Split by logical change. One commit = one idea a reviewer can hold in their
  2. Order the story. Sequence commits so each builds on the last and the branch
  3. Say why in the message. The diff already shows what. The message carries
  4. Make each commit stand alone. Every commit builds and passes on its own — no
  5. Cut the noise. Formatting-only churn, generated files, and stray debug

What it can do on your machine

Read from SKILL.md and the folder at commit 5bd4f16. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Explainer loads about 1.6k tokens when it runs. Until then it costs about 172 tokens; SKILL.md has 910 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~172
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ccplugins/awesome-claude-code-plugins at commit 5bd4f16, republished under its MIT licence (© ccplugins). 910 words, ~1,569 tokens.

Download SKILL.mdSave it as .claude/skills/explainer/SKILL.md (or your agent's skills folder).
name
explainer
description
Reviewable git hygiene for work you're about to commit or open a PR for. Before the commit, split the change into small self-contained commits — one logical change each — and write messages that explain WHY, not just what, so the person debugging this at 3am (usually you) can follow the story. Structure the diff so a reviewer reads it top to bottom and understands. Supports intensity levels: lite, full (default), ultra. Use whenever the user says "explainer", "commit this", "make a PR", "clean up the history", "write the commit message", or ships non-trivial work to review. Do NOT use for trivial one-line fixes, WIP the user asked to keep messy, or non-commit requests.
argument-hint
[lite|full|ultra]
license
MIT

The Explainer

You are a senior engineer who has git-blamed a load-bearing line at 3am, hit a one-word message from your own hand two years back, and cursed. You never do that to the next person. You write the feature, then you write the record of it — commits a reviewer can follow and a debugger can trust. Then you push.

A diff shows what changed. The commit is the only place the why survives.

When it fires

Not every change earns a story. A typo fix, a version bump, a WIP the user wants kept as-is — that's one commit, one honest line, done. The discipline fires when the work is non-trivial and about to be reviewed or shipped:

  • a feature or fix that touches more than one concern
  • a PR someone other than you will read
  • a big uncommitted blob mixing unrelated changes
  • history you're about to rewrite, squash, or hand off

Trivial one-liner → commit it plainly and move on. YAGNI applies to ceremony too; don't manufacture four commits out of one honest change.

The mechanism

Write it. Then stop being the author and become the reviewer who has to sign off cold:

  1. Split by logical change. One commit = one idea a reviewer can hold in their head and approve on its own. Group the diff by concern, not by file or by the order you typed it. Unrelated changes belong in separate commits.
  2. Order the story. Sequence commits so each builds on the last and the branch reads top to bottom: scaffolding before the wiring, the wiring before the test, the config bump last. A reviewer should never scroll back to understand.
  3. Say why in the message. The diff already shows what. The message carries the reason the diff doesn't: the bug it closes, the constraint it satisfies, the path not taken. fix stuff is a failure; so is update UserService.
  4. Make each commit stand alone. Every commit builds and passes on its own — no "fixes the last commit" in the next one. If commit 2 needs commit 1 to compile, they were one commit.
  5. Cut the noise. Formatting-only churn, generated files, and stray debug prints get their own commit or none — never smuggled into a logic change where they hide the real diff.

Every split is specific to this change. One clean history a reviewer trusts beats ten commits that just say wip.

Rules

  • Write for the reviewer, not the compiler. The compiler doesn't read messages; the human deciding whether to trust your code does.
  • A commit is a unit of review, not a save point. If it can't be reviewed in isolation, it isn't done being split.
  • Keep unrelated changes apart. A refactor riding along in a feature commit hides both — and doubles the blast radius when one gets reverted.
  • Say why, always. "What" is in the diff; a message that only restates the diff earns its place by wasting the reader's time.
  • Failure mode to avoid: the one 41-file fix stuff commit nobody can review, so they rubber-stamp it. An unreviewable diff is an unreviewed diff.

Output

Commits and messages first — the real history, written. Then a short Split: report: how you carved it and why, in a few lines. If the report is longer than the log, cut it.

Pattern: [commits] → Split: [N logical commits: a / b / c] · [why this order] · [what stayed separate]

Show full SKILL.md (346 more words)Show less

Intensity

LevelWhat change
liteCommit the work, but name the better split or the missing "why" in one line. User decides.
fullSplit into logical commits, order the story, write why-focused messages. Default.
ultraFull, plus — each commit verified to build/pass alone, a PR description that walks the reviewer through the reasoning, and unrelated churn pulled out entirely.

Example — a single 41-file fix stuff commit adding rate-limiting middleware:

  • lite: "Committed. Better move: this is really four changes — the middleware, wiring it into the router, its test, and the config bump. Split them and reviewers can approve each; want me to?"
  • full: "Restructured into four commits: add rate-limit middleware → wire middleware into API router → test rate-limit under burst → raise default request ceiling to 100/min. Each builds alone; messages say why the limit exists, not just that it does. Split: 4 logical commits in dependency order · config bump last so the behavior change is reviewable on its own."
  • ultra: full, plus — confirmed each commit compiles and tests green in isolation; PR body walks the reviewer from the incident that motivated the limit through the chosen ceiling and the burst test; the unrelated import-sort churn that snuck in got its own chore: sort imports commit so it doesn't muddy the diff.

When NOT to

Skip it for trivial one-line changes, throwaway or WIP branches the user asked to keep messy, or when told to stop. Never rewrite history the user has already pushed and shared without asking. And never let the pursuit of a clean story delete a change or weaken the code — the history serves the work, not the reverse. The human's call on how to slice it wins; push once, then commit it their way.

Boundaries

The Explainer governs how you record what you build, not how much you build — pair it with Chameleon (match the house style in the code) and Closer (prove it works before the message says it does). "stop explainer" / "normal mode": revert. Level persists until changed or session end.

The diff is forgotten by morning. The commit is read for years.

© ccplugins, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/bullpen/skills/explainer of ccplugins/awesome-claude-code-plugins.

Open the folder on GitHubat commit 5bd4f16

Compare with similar skills

Explainer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Explainer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Explainer this skillccplugins/awesome-claude-code-plugins967—~1.6kAutomated safety check: PassMIT
Git Workflow and Versioningaddyosmani/agent-skills102k2 repos~3.5kAutomated safety check: NotesMIT
React Router Pull Request Creatorremix-run/react-router57k—~2.5kAutomated safety check: PassMIT
Verdaccio Pull Request Workflowverdaccio/verdaccio18k—~1.9kAutomated safety check: PassMIT
Emoji Commit ConventionsbaptisteArno/typebot.io11k—~424Automated safety check: PassCustom licence
Draft Pull Request Creatorwordpress-mobile/WordPress-Android3.2k—~881Automated safety check: NotesGPL-2.0

Similar skills

  • Git Workflow and Versioning

    addyosmani/agent-skills

    Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.

    102k GitHub starsUsed in 2 repos~3.5k tokens
    DevelopmentAuto-check: notes
  • React Router Pull Request Creator

    remix-run/react-router

    Packages finished React Router work into a draft pull request: branch, commit, push, a written PR body and the right GitHub labels.

    57k GitHub stars~2.5k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Takes a change through a verdaccio pull request: branch, local checks, changeset, title and body, labels, CI and review rounds, and ports to other release lines.

    18k GitHub stars~1.9k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Emoji Commit Conventions

    baptisteArno/typebot.io

    Sets the repository's convention for commit messages and pull request titles: one emoji prefix for the main intent, a concise title and clean follow-up commits.

    11k GitHub stars~424 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Draft Pull Request Creator

    wordpress-mobile/WordPress-Android

    Commits and pushes current changes, writes a pull request title and body from the branch history and template, and opens a draft PR on GitHub after you approve it.

    3.2k GitHub stars~881 tokensUpdated today
    DevelopmentAuto-check: notes
  • Submit PR

    tisfeng/Easydict

    创建或复用当前 checkout 已提交变更的 GitHub PR,必要时推送任务分支。PR 审查使用 review-pr;仅本地提交使用 git-commit。

    15k GitHub stars~595 tokensUpdated yesterday
    DevelopmentAuto-check passed

More from ccplugins/awesome-claude-code-plugins

All 68 skills in this repo
  • AI Meeting

    ccplugins/awesome-claude-code-plugins

    Run structured AI meetings for plans, product ideas, technical designs, business decisions, feature proposals, and strategy choices.

    967 GitHub stars~2.4k tokensUpdated 1 mo ago
    Auto-check: notes
  • Fastapi App

    ccplugins/awesome-claude-code-plugins

    Bootstrap a new FastAPI backend with async SQLAlchemy 2.0, asyncpg, Alembic, Pydantic v2, and no deprecated APIs.

    967 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check: notes
  • Flutter App

    ccplugins/awesome-claude-code-plugins

    Bootstrap a new Flutter mobile app with clean architecture, Riverpod, FVM-pinned SDK, current packages, and no deprecated APIs.

    967 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check: notes
  • Nextjs App

    ccplugins/awesome-claude-code-plugins

    Bootstrap a new Next.js (App Router, TypeScript) web app with current packages and no deprecated APIs.

    967 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check: notes
  • Dev Report

    ccplugins/awesome-claude-code-plugins

    Write up a coding session for a non-technical stakeholder — the context, what was built, and the engineering reasoning behind it — the way a senior engineer briefs a product manager who does not…

    967 GitHub stars~3.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Difesa Attacchi

    ccplugins/awesome-claude-code-plugins

    Aggiunge a un sito/app un agente di difesa che rileva e blocca richieste malevole (SQL injection, XSS, path traversal, brute force, bot) con rate limiting, blocklist IP e modalità lockdown che…

    967 GitHub stars~781 tokensUpdated 1 mo ago
    Auto-check passed

Works with

Categories

Questions about Explainer

What does Explainer do?

Reviewable git hygiene for work you're about to commit or open a PR for. Explainer is an agent skill from ccplugins/awesome-claude-code-plugins. Reviewable git hygiene for work you're about to commit or open a PR for.

When should I use Explainer?

Explainer fits situations like: the user says explainer; clean up the history; write the commit message; ships non-trivial work to review.

How do I install Explainer in Claude Code?

Run `npx skills add ccplugins/awesome-claude-code-plugins --skill explainer -a claude-code`. Or copy the skill folder (plugins/bullpen/skills/explainer in ccplugins/awesome-claude-code-plugins) into .claude/skills/explainer in your project. Claude Code loads it when a task matches its description.

How do I install Explainer in Codex?

Run `npx skills add ccplugins/awesome-claude-code-plugins --skill explainer -a codex`. Or copy the skill folder (plugins/bullpen/skills/explainer in ccplugins/awesome-claude-code-plugins) into .agents/skills/explainer in your project. Codex loads it when a task matches its description.

Can I use Explainer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ccplugins/awesome-claude-code-plugins --skill explainer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/explainer, .gemini/skills/explainer, .github/skills/explainer and .opencode/skills/explainer in your project.

What does Explainer need to run?

SKILL.md names no scripts, command-line tools or credentials: Explainer is instructions for the agent only.

Does Explainer access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Explainer safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Explainer use?

Explainer is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Explainer use?

About 1.6k tokens (SKILL.md is roughly 6.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Explainer?

Skills that share tags, products or a category with Explainer: Git Workflow and Versioning (addyosmani/agent-skills, 102k stars), React Router Pull Request Creator (remix-run/react-router, 57k stars), Verdaccio Pull Request Workflow (verdaccio/verdaccio, 18k stars) and Emoji Commit Conventions (baptisteArno/typebot.io, 11k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Explainer?

ccplugins (a GitHub organization) maintains it in ccplugins/awesome-claude-code-plugins, which has 967 GitHub stars. The repository holds 68 skills in this directory. The repository was last updated on August 12, 2026.

Source: ccplugins/awesome-claude-code-plugins on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.