By Ic3b3rg
Closes the comprehension gap from LLM-generated code by packaging evidence-backed pedagogical skills (question-based reasoning, analogies, teach-back, flashcards, graded exercises, linked notes) as agent workflows that actively re-engage the developer in understanding.
The agent asks the user only questions — never declares facts, never gives answers, never produces explanations. Each question is targeted to advance the user one step toward an insight they will construct themselves. Use when the user explicitly wants to reason something out without being told (debugging an unfamiliar piece of code, working through a design choice, untangling a confusion), or anytime they say "ask me questions" or "don't tell me, ask me".
Performs a formative assessment of the user's current understanding of a topic or piece of code. Output is ALWAYS a discrete Bloom or SOLO level + a concrete gap list + a suggested next skill — NEVER a 1-100 score (false precision, false closure, borrowed confidence). Use when the user wants to check their current level, after one or more learning sessions, at the end of a study sprint, or anytime they say "test me", "where am I at", "how well do I know X", "assess this".
Builds durable understanding by forcing the user to connect a new concept to things they already know — analogies to other languages, prior patterns, similar abstractions in different domains. The agent never volunteers the analogy; the user produces it, the agent stress-tests it. Use when the user is learning something new and wants to anchor it to existing knowledge, when reading code that uses an unfamiliar pattern, when a concept "isn't sticking", or anytime they say "what does this remind me of?" or "connect this to what I know".
Verifies the user's understanding of a piece of code or a topic by making them explain it first, then stress-testing the explanation against the real artefact (code, tests, official documentation). Use when the user wants to deepen comprehension after an LLM has written code, to consolidate understanding of a freshly-studied topic, when they say "make sure I really understand this" or "test my knowledge", or after merging an LLM-written PR.
Produces ASCII flashcards (question on the front, answer on the back, separated by a fold marker) for retrieval practice on a topic or piece of code. Each card targets one atomic fact, anchored to a citation. The user generates the question phrasing; the agent verifies the answer against the real artefact. Use when the user wants reusable retrieval material after a learning session, when capturing facts from a /explain-and-check or /quiz-me session, or anytime they say "give me flashcards" or "I want to drill this".
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
A set of agent skills that package evidence-backed pedagogical methodologies as workflows applied to code: explain-and-check, quiz-me, connect-to-what-you-know, ask-me-questions, learn-by-doing, linked-notes, flashcards.
Motivation: closing the comprehension gap that opens between a human and a codebase when an LLM has done the work on the human's behalf. This is the anti-surrender layer that sits next to Addy Osmani's agent-skills — those cover how to build, this covers how to learn what was built.
Read CONTEXT.md for the full design rationale, vocabulary, and decisions log. Read docs/adr/ for the load-bearing architectural decisions.
/plugin marketplace add Ic3b3rg/learn-skills
/plugin install learn-skills@ic3b3rg-learn-skills
The easiest way to begin: run /start-learn. Tell it what you want to learn — it figures out the right approach and acts. You always make the final call.
/start-learn
If you already know what you need:
# Understand code an LLM just wrote
/explain-and-check path/to/that-file.ts
# Check what you've actually learned
/assess "event sourcing"
The other six skills (quiz-me, connect-to-what-you-know, ask-me-questions, learn-by-doing, linked-notes, flashcards) are listed below — or just run /start-learn and let the interview surface the right one.
LLMs often write good code. The risk isn't bad code — it's that the human's understanding shrinks while the codebase grows. Four sources converging on this:
Not sure where to start? Run /start-learn — tell it what you want to learn and it takes it from there. You always make the final call.
Two canonical scenarios:
| Scenario | You just... | Reach for |
|---|---|---|
| A — Understand code an LLM wrote | merged a PR / accepted a refactor / let an agent close a task | /explain-and-check <file>, /connect-to-what-you-know <file>, /linked-notes <file> |
| B — Learn a topic from scratch | want to learn a new language, framework, or skill from zero | /start-learn → creates a workspace with a curriculum, HTML lessons with quizzes, glossary, and curated resources |
| Command | What it does | When to use |
|---|---|---|
/start-learn | Asks what you want to learn, then auto-detects the approach. Scenario A (existing code): proposes the right dialogic skill. Scenario B (from scratch): creates a workspace with CURRICULUM.md, HTML lessons, glossary, and RESOURCES.md. Never auto-dispatches. | Starting point for any learning session. |
/assess | Produces a discrete level (Bloom or SOLO) + a concrete gap list + a suggested next skill. Never a 1-100 score. | After one or more sessions; you want to know what you actually retained. |
| Command | What it does | When to use |
|---|---|---|
/explain-and-check | You explain a topic or piece of code in your own words; the agent stress-tests your explanation against the real artefact (code, tests, docs). | After an LLM wrote code you accepted; you want to verify you really understand it. |
/quiz-me | Forces you to retrieve knowledge from memory before consulting any source; the agent verifies what you produced against the real artefact. | After a learning session, or a few days later — you want to test what stuck. |
/connect-to-what-you-know | You produce analogies between the new concept and things you already know; the agent stress-tests the analogies. | Learning something unfamiliar; you want to anchor it to prior knowledge. |
/ask-me-questions | The agent only asks questions — never declares, never explains. You construct the insight yourself. | You want to reason something out rather than be told the answer. |
npx claudepluginhub ic3b3rg/learn-skills --plugin learn-skillsPersonalized coding tutorials that use your actual codebase for examples with spaced repetition quizzes
Science-based learning exercises for deliberate skill development during AI-assisted coding
In-context coding tutor for Claude Code. Learn from your real project with explanations, quizzes, diagnostics, and belt-based progression — locally and privately.
AI-powered Socratic learning mode - Transform Claude into a patient coding mentor that guides you through problem-solving without giving direct answers
Adaptive technical tutoring skill that builds a persistent knowledge graph and learner profile across sessions
Interactive learning companion — creates personalized learning plans, quizzes with adaptive difficulty, and tracks progress across sessions