GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com โ€” GitHub - Mainloop-AI/python-tutor-skill: A Claude Code skill that teaches Python to absolute beginners through real .py files, Socratic feedback, and persistent memory. 25 exercises, 5 projects, adaptive difficulty, attempt tracking, and spaced repetition โ€” all in your terminal.

BranchesTags
Open more actions menu

Latest commit

 

History

7 Commits
7 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/ISSUE_TEMPLATE
.github/ISSUE_TEMPLATE
 
 
docs
docs
 
 
skill
skill
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
install.sh
install.sh
 
 

Repository files navigation

๐Ÿ Python Tutor โ€” Claude Code Skill

Learn Python the right way โ€” with an AI tutor that never gives you the answer.

Python Claude Code License: MIT Exercises Tests


A Claude Code skill that turns your terminal into a personalized Python classroom. Write real code in real files, get Socratic feedback, and build projects โ€” all with persistent memory that adapts to how you learn.


No copy-paste. No hand-holding. Real skills.


Why This Exists

Most AI coding tools write code for you. That's great for productivity โ€” terrible for learning.

This skill flips the model: you write the code, and Claude acts as a patient teacher who reads your work, runs tests, and guides you with questions โ€” never answers. It remembers what you struggle with, tracks every attempt, and adapts the curriculum to your pace.

Built for absolute beginners. No prior coding experience needed.

How It Works

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  You write Python          Claude teaches        โ”‚
โ”‚  in real .py files    โ†’    reads your code       โ”‚
โ”‚  in VS Code/Cursor    โ†’    runs tests silently   โ”‚
โ”‚                       โ†’    gives Socratic hints   โ”‚
โ”‚                       โ†’    tracks your progress   โ”‚
โ”‚                       โ†’    NEVER writes your code โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
  1. /learn start โ€” onboarding: profile, environment check, first exercise
  2. You write code in VS Code/Cursor โ€” real .py files, not a chat window
  3. /learn check โ€” Claude runs your code + tests, gives feedback without spoiling the answer
  4. /learn hint โ€” graduated hints (vague โ†’ specific), only when you're stuck
  5. /learn next โ€” advance when you're ready. Curriculum adapts to you.

Quick Start

# Clone the repo
git clone https://github.com/egouilliard-leyton/python-tutor-skill.git
cd python-tutor-skill

# Install (creates symlink โ€” updates are instant)
bash install.sh

# Open Claude Code and start learning
/learn start

Requirements: Python 3.10+, Claude Code, VS Code or Cursor

Features

๐ŸŽ“ Socratic Teaching

Never gives the answer. Uses graduated hints (4 levels), prediction questions, and "what do you think went wrong?" to build real understanding.

๐Ÿ“Š Attempt Tracking

Every /learn check logs a full snapshot: your code, test results, error types, hints used. Watch your progression from 0/5 โ†’ 3/5 โ†’ 5/5.

๐Ÿง  Persistent Memory

Remembers your name, pace, strengths, weaknesses, and error patterns across sessions. Never asks the same setup question twice.

๐Ÿ”„ Spaced Repetition

Concepts decay over time. The skill auto-reviews topics you haven't practiced, using proven memory science to prevent forgetting.

๐Ÿ“ˆ Adaptive Difficulty

Comfort scores (0-100) per concept. Aced it? Skip ahead. Struggling? Extra practice, different analogies, sub-problems.

๐Ÿ† Gamification

XP, levels (Novice โ†’ Expert), achievements, streaks. Motivation without distraction.

Curriculum

8 modules, 40 lessons, from print("Hello") to building real projects.

Module Topic Lessons Project
1 First Steps โ€” print, variables, strings, numbers, input 5 Mad Libs Generator
2 Decisions โ€” booleans, if/else, elif, logic, nesting 5 Text Adventure Game
3 Loops โ€” while, for, break/continue, nested, patterns 5 Number Guessing Game
4 Collections โ€” lists, methods, looping, dicts, nesting 5 Contact Book
5 Functions โ€” def, params, defaults, scope, composition 5 Calculator
6 Files & Errors โ€” read/write, try/except, CSV/JSON 5 Expense Tracker
7 Leveling Up โ€” comprehensions, modules, pip, APIs 5 Weather App
8 Objects โ€” classes, methods, attributes, inheritance 5 Final Project

Modules 1-5 are fully built with pre-tested exercises. Modules 6-8 have curriculum specs ready for generation.

Bonus Exercises

Extra practice when you need it:

Exercise Concepts
strings_reverse String reversal, palindrome detection
loops_pyramid Nested loops, string centering
lists_stats Median, mode, range calculations
dict_word_count Word frequency, finding the most common

Commands

Command What it does
/learn Smart session start โ€” resumes where you left off
/learn start First-time setup (profile, environment, first exercise)
/learn check Run your code + tests, get Socratic feedback
/learn run Just run your code and see the output
/learn hint Get the next hint (gets more specific each time)
/learn next Move to the next exercise
/learn back Go back to the previous exercise
/learn progress Full dashboard โ€” level, streak, curriculum map
/learn review Spaced repetition quiz on past topics
/learn project Start or continue your current project
/learn try Run a quick code snippet inline
/learn explain On-demand explanation of any concept
/learn vocab All programming terms you've learned
/learn stats Deep analytics on your learning journey
/learn streak Your coding streak and stats
/learn update Sync latest exercises and tests from the repo
/learn help Show all commands

Exercise Format

Every exercise is a real .py file with clear instructions:

# ============================================
# Lesson 7: If/Else โ€” Can You Vote?
# ============================================
#
# GOAL: Check if someone is old enough to vote.
#
# RULES:
#   Write a function can_vote(age) that:
#   - Returns "You can vote!" if age is 18 or older
#   - Returns "Not yet! X more years to go." if under 18
#
# EXAMPLES:
#   can_vote(20) โ†’ "You can vote!"
#   can_vote(15) โ†’ "Not yet! 3 more years to go."
# ============================================

def can_vote(age):
    # YOUR CODE HERE
    pass

Tests check behavior, not code style โ€” any valid approach passes:

# All of these pass the tests:
if age >= 18:                          # Style A: standard
if 18 <= age:                          # Style B: reversed
return "..." if age >= 18 else "..."   # Style C: ternary

Attempt Tracking

Every /learn check records the full story:

Lesson: 07_if_else
Started: 2026-06-05 14:30
Completed: 2026-06-05 14:52 (3 attempts)

  โœ— Attempt 1: SyntaxError โ€” missing colon after if (0/7 tests)
  โœ— Attempt 2: test_failure โ€” used > instead of >= (5/7 tests)
  โœ“ Attempt 3: pass โ€” all 7 tests passing

/learn stats analyzes this data to show improvement trends, common error patterns, and which topics need review.

Project Structure

python-tutor-skill/
โ”œโ”€โ”€ install.sh                  # One-line installer
โ”œโ”€โ”€ docs/                       # Research, specs, architecture
โ”‚   โ”œโ”€โ”€ 01-research-context.md
โ”‚   โ”œโ”€โ”€ 02-feature-spec.md
โ”‚   โ”œโ”€โ”€ 03-architecture.md
โ”‚   โ”œโ”€โ”€ 04-curriculum.md
โ”‚   โ”œโ”€โ”€ 05-pedagogy.md
โ”‚   โ”œโ”€โ”€ 06-data-model.md
โ”‚   โ””โ”€โ”€ 07-exercise-sources.md
โ””โ”€โ”€ skill/
    โ”œโ”€โ”€ python-tutor.md         # Skill prompt (symlinked to ~/.claude/skills/)
    โ”œโ”€โ”€ curriculum/             # Curriculum graph + module specs
    โ”œโ”€โ”€ exercises/              # 25 lessons + 5 projects + bonus
    โ”‚   โ”œโ”€โ”€ 01_hello_world/
    โ”‚   โ”‚   โ”œโ”€โ”€ exercise.py     # What the student sees
    โ”‚   โ”‚   โ”œโ”€โ”€ test_exercise.py # Behavior-based tests
    โ”‚   โ”‚   โ”œโ”€โ”€ solutions.py    # Multiple valid approaches (never shown)
    โ”‚   โ”‚   โ””โ”€โ”€ teaching_guide.md # Socratic script for Claude
    โ”‚   โ”œโ”€โ”€ .../
    โ”‚   โ””โ”€โ”€ bonus/              # Extra practice exercises
    โ”œโ”€โ”€ lib/                    # Test runner, error translator
    โ””โ”€โ”€ templates/              # Exercise file templates

Design Principles

Principle How
Never give the answer 4-level graduated hints. Full explanation only after 3+ failures.
Real developer workflow Real .py files in VS Code/Cursor. Not a chat window.
One concept at a time Each lesson teaches exactly ONE thing.
Errors are teachers Translates tracebacks to plain language, then asks "what do you think?"
Tests check behavior, not style if age >= 18 and if 18 <= age both pass.
Memory across sessions Progress, struggles, streaks โ€” all persisted in JSON.
Never ask twice Environment, preferences, setup โ€” checked once, stored forever.

Exercise Sources

Built with inspiration and test patterns from these MIT-licensed repos:

  • exercism/python โ€” 146 exercises with pytest (primary source)
  • jerry-git/learn-python3 โ€” Jupyter notebooks + pytest
  • trekhleb/learn-python โ€” Assertion-based scripts
  • gregmalcolm/python_koans โ€” TDD-based learning

See docs/07-exercise-sources.md for full research (15+ repos analyzed).

Contributing

# Work on a feature branch
git checkout -b feature/new-exercise

# Add exercises, run tests
python3 -m pytest skill/exercises/*/test_exercise.py -v

# Push and create PR (main requires approval)
git push -u origin feature/new-exercise
gh pr create

License

MIT โ€” use it, fork it, teach with it.


Built with Claude Code ยท Designed for beginners ยท Powered by curiosity

About

A Claude Code skill that teaches Python to absolute beginners through real .py files, Socratic feedback, and persistent memory. 25 exercises, 5 projects, adaptive difficulty, attempt tracking, and spaced repetition โ€” all in your terminal.

Topics

ai-tutoranthropicbeginnerclaude-codeclicoding-exerciseseducationlearn-to-codelearning-pythonprogrammingpythonpython-tutorsocratic-methodspaced-repetitiontest-driven-learningtutorialvscode

Resources

Readme
MIT license
Activity
Custom properties

Stars

2 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 โ€” GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800ร—600. No cookies required.