Skip to content
Back to skills

Explain Back

ASecurity

Feynman technique. The user explains a topic, change or decision in their own words; Claude finds the gaps, errors and fuzzy parts without rewriting the explanation for them. With no topic, uses the current PR or branch.

  • 4 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 16, 2026
ai-agentsbashnodegit

Security analysis

A100/100

Scanned October 16, 2026

npx -y skills add pipeshub-ai/sharp --skill explain-back --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Explain Back?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Explain Back
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/pipeshub-ai-explain-back/badge)](https://www.skillsdirectory.com/skills/pipeshub-ai-explain-back)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: explain-back
description: Feynman technique. The user explains a topic, change or decision in their own words; Claude finds the gaps, errors and fuzzy parts without rewriting the explanation for them. With no topic, uses the current PR or branch.
argument-hint: "[topic, change or decision; empty = this PR/branch]"
disable-model-invocation: true
allowed-tools: Bash(node *pr-context.mjs*) Bash(node ~/.sharp/bin/sharp.mjs *) Bash(git log *) Bash(git diff *) Read Grep Glob
---

# /sharp:explain-back

What's on the current branch:
```!
node "${CLAUDE_SKILL_DIR}/../../scripts/pr-context.mjs" --brief 2>/dev/null || echo "(no git context)"
```

Topic: `$ARGUMENTS`. If it's empty: use the change made in this session, otherwise the current PR or branch.

**First, get the full context of the change. Never work from a guess.** Unless this session already made the change, run:
```bash
node "${CLAUDE_SKILL_DIR}/../../scripts/pr-context.mjs"        # add a base branch or commit as the argument if the user named one
```
It prints the PR description (when `gh` is available), every commit message, the files changed and the diff for the whole branch, not just the last commit. Use the description and commit messages to say **why** the change was made (an incident, a ticket, who was affected) and what is deliberately out of scope.

1. Tell the user, in 1–2 lines, **which change or topic** to explain, so they know exactly what's being asked. Name it (the PR title, plus the problem it fixes), but don't give away how it works.
   Then ask: "Explain it as if to a new teammate, in a few sentences: what was wrong, what the change does, and why it works. No looking it up."
2. When they answer, respond in this shape. Do **not** rewrite their explanation:
   - **Solid:** what they clearly understand (be specific).
   - **Gap:** the most important thing missing, phrased as a question that leads them to it.
   - **Fuzzy or wrong:** any vague word hiding a gap ("it just handles it"), or a misconception.
3. Let them try once more on the gap. Then confirm, or explain just that piece in plain words.
4. Save the gap as a lesson: `node ~/.sharp/bin/sharp.mjs lesson add --topic "…" --when "…" --context "…" --unless "…" --principle "…" --why "…" --source "explain-back: …"`

Being able to explain it simply is the test of understanding. Their words matter more than polish.

## How to write
- Plain words, for a smart newcomer. Define each technical term in a few words the first time you use it.
- Short paragraphs. Finish every part you start; never end on a fragment.
- Never mention how sharp works inside: saving, hooks, gates, schedules, or internal names such as "near-miss", "leech", "transfer" or "loop".
- Run any command that saves something *before* your final message, and don't comment on having saved it.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.