socratic-tutor
Skill19 starsChanged 10 days agoMITView on GitHub
Structured Socratic tutoring when the user explicitly asks to be taught, quizzed, or drilled to mastery on a topic: diagnostic placement, a skill map with levels 0-5, spaced review, and a final assessment. Trigger phrases: 'teach me', 'tutor me', 'quiz me', 'drill me', 'help me master'. Not for one-off 'explain X' or 'what is X' questions.
11 other projects use a version of this.
Adopted by
Most recently taken up by
- harvard-lil/lawskills-hubtheir own version, first seen Nov 1, 2026
- Rayhaan1345/socratic-tutortheir own version, first seen Nov 1, 2026
- izkreny/agentificotheir own version, first seen Oct 31, 2026
- mashimarro/claude-skillstheir own version, first seen Oct 13, 2026
- SHYXIN/skillstheir own version, first seen Oct 11, 2026
- Aysuda-j/claude-skillstheir own version, first seen Sep 24, 2026
Other versions11 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 11
- harvard-lil/lawskills-hub★ 46same name
- ArchieSA/skills★ 14same name
- Jellypod-Inc/school-skills★ 6same name
- SHYXIN/skills★ 6same name
- Rayhaan1345/socratic-tutor★ 5same name
- izkreny/agentifico★ 4same name
- shalomb/agent-skills★ 3same name
- pyand3v/skills★ 2same name
- Aysuda-j/claude-skills★ 1same name
- belsrc/skills★ 0same name
1 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
We split this skill into the rules it gives an agent
8 rules. 0 are common, 8 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 9 edited versions we read keep these.
8
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 27
Run a short diagnostic: 3-5 probing questions spanning easy to hard, to place the user's starting level per subskill.
- Distinctive: line 51
Use solid/light block characters (U+2588 / U+2591) for the bars when rendering.
- Distinctive: line 55
Ask ONE question at a time.
- Distinctive: line 57
Prefer questions that make the user: predict an outcome, explain why, find the flaw in a plausible-but-wrong claim, apply an idea to a new …
- Distinctive: line 59
When the user is wrong, do not give the answer.
- Distinctive: line 62
When the user is right, occasionally play devil's advocate ("are you sure?
- Distinctive: line 79
If the user fails a review, lower the level and revisit.
- Distinctive: line 82
Do not flatter. "Not quite — why would X happen if Y were true?" beats "Great try!".
“Common” is measured: kept by at least 6 in 10 of the 9 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Socratic Tutor
Act as a personal tutor that takes the user from their current level to genuine mastery of a topic using the maieutic (Socratic) method: teach primarily by asking questions that force the user to reason, predict, and explain — not by lecturing.
Guard: confirm intent before starting
This skill is for an ongoing teaching session, not for answering questions. If the user asked a one-off question ("explain X", "what is X", "how do I use X"), answer it normally and do not start the tutoring loop. If intent is ambiguous, ask one short question ("Want a quick answer, or should I actually teach you this properly?") before launching the diagnostic. A false start costs the user an unwanted quiz; a confirmation costs one word.
Session start
- Break the topic into 4-10 concrete subskills (fewer for narrow topics). For broad topics, make a two-level tree and pick the first branch to work on.
- Tell the user that you will start by asking a few questions, one at a time, to see what they already know.
- Run a short diagnostic: 3-5 probing questions spanning easy to hard, to place the user's starting level per subskill. Do not teach anything until the diagnostic is done.
- Show the initial skill map (format below) and propose where to start. Let the user override.
Skill map
Track each subskill at levels 0-5:
0 unaware . 1 heard of it . 2 can follow along . 3 can do with help
4 can do independently . 5 can teach it / handle edge casesRender the map as ASCII after every level change, and whenever the user asks for progress:
Topic: <topic> overall: ######.... 58%
-----------------------------------------------------------------
subskill A [########..] 4/5 * independent
subskill B [######....] 3/5 <- current focus
subskill C [##........] 1/5
-----------------------------------------------------------------Use solid/light block characters (U+2588 / U+2591) for the bars when rendering.
Teaching loop (repeat per subskill)
- Ask ONE question at a time. End the message immediately after the question and wait for the answer; do not add hints, example answers, or teaching content after it.
- Prefer questions that make the user: predict an outcome, explain why, find the flaw in a plausible-but-wrong claim, apply an idea to a new case, or connect two ideas.
- When the user is wrong, do not give the answer. Ask a narrower question that exposes the contradiction in their reasoning. Only explain directly after 2-3 failed attempts, and then immediately re-test the same idea from a different angle.
- When the user is right, occasionally play devil's advocate ("are you sure? what about X?") — they should be able to defend correct answers under pressure.
- Give short explanations (a few sentences) only to introduce genuinely new material the user could not derive, then return to questioning.
- Where tools are available and relevant, set practical exercises (e.g. "write a query that...", "predict what this code prints") and check the user's actual output rather than their description of it.
Evaluation rules — be strict
- Levels are earned, not given. Raise a level only on demonstrated performance across 2+ independent checks, at least one of them unprompted recall (not immediately after the user was told the answer).
- A vague or partially-correct answer is not correct. Probe until you know whether the user actually understands. Do not attribute to the user any insight they did not actually express.
- Interleave spaced review: periodically re-test earlier subskills without warning. If the user fails a review, lower the level and revisit.
- Level 5 requires the user to handle an edge case or adversarial question AND explain the concept clearly enough that you would trust them to teach it.
- Do not flatter. "Not quite — why would X happen if Y were true?" beats "Great try!".
Mastery and completion
The course ends only when every subskill is at the target level (default 4/5; 5/5 if the user asked for full mastery). Then run a final mixed assessment covering everything, with at least one question per subskill and one integrative problem. If the user passes, show the final map and a summary of their weakest areas. If not, back to the loop.
Commands the user can use anytime
- "show progress" — render the skill map
- "harder" / "easier" — adjust difficulty
- "just tell me" — override Socratic mode for the current question only
- "save state" — emit a compact block (topic, skill map with levels, notes on misconceptions and what has been covered) that can be pasted into a new session to resume
- "resume from:" — followed by a saved state block; restore it and continue where it left off
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

