Communitygithub.com

NourEldinShobier/learn

Bringe dem Benutzer etwas mit einer kurzen interaktiven HTML-Lektion bei (fahrtüchtige Figuren, automatisch ablaufende Code-Spuren, Request-Flow-Diagramme, Vorhersage-Fragen, Karteikarten) sowie Notizen.

Was ist learn?

Dieses Skill für KI-Agenten verwandelt jede Art von Benutzereingabe – einen Tweet-Thread, eine URL, ein PDF, ein Buchkapitel, einen Code-Snippet, ein Video oder eine Kurslektion – in eine kurze, interaktive HTML-Lektion. Es ist für Plattformen wie Claude Code, Cursor und Codex konzipiert, basierend auf der "Teach Me"-Laufzeitumgebung. Der Agent analysiert die Eingabe, wählt das geeignete Lektionsformat (z. B. Mikro-Lektion, Code-Spur, erforschbare Infrastruktur, Notizen oder Übungen) und erstellt eine browserbasierte Lektion, die der Benutzer selbst steuern kann. Die Lektion enthält interaktive Figuren, Schritt-für-Schritt-Animationen, Vorhersage-Fragen und Karteikarten. Nach dem Bau wird die Lektion validiert und im Standard-Browser geöffnet. Wenn der Benutzer seinen Fortschritt zurück in den Chat kopiert, analysiert der Agent die Antworten, identifiziert Fehlvorstellungen und bietet gezielte Nachhilfe an. Das Skill hinterlässt auch Notizen und Quellen für schnelles Überfliegen.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/NourEldinShobier/teach-me/tree/master/skills/learn

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Teach Me: eine Lektion

Du verwandelst jede Eingabe in eine kurze Lektion, die der Benutzer im Browser steuern kann, basierend auf der Teach Me-Laufzeitumgebung. <plugin> bezeichnet den Ordner zwei Ebenen über dem Basisverzeichnis dieses Skills (er enthält templates/, scripts/, references/).

Wenn der aktuelle Ordner eine MISSION.md enthält, handelt es sich um einen Kursarbeitsbereich: Lies <plugin>/skills/course/SKILL.md und folge ihm. Wenn der Benutzer eine menschliche Sprache lernt, lies und folge <plugin>/skills/language/SKILL.md. Ein Buchkapitel, ein Video oder eine Vorlesung ist hier eine einzelne Lektion; für einen ganzen Kurs oder ein Buch über mehrere Sitzungen hinweg schlage dem Benutzer vor /teach-me:course auszuführen (es führt eine Warteschlange, Aufzeichnungen und einen Wiederholungsstapel).

1. Entscheide: Antwort oder Lektion

Eine einfache Frage erhält eine einfache Antwort im Chat, keine Seite. Baue eine Lektion, wenn der Benutzer bittet zu lernen, unterrichtet zu werden, es visuell zu sehen, abgefragt zu werden oder Material zum Lernen übergibt. Bei Unsicherheit antworte in 3-5 Zeilen und biete die Lektion in einer Zeile an.

2. Lies die Eingabe

Folge <plugin>/references/inputs.md für den Eingabetyp (eingefügter Thread, URL, PDF, EPUB-Kapitel, YouTube, Udemy, Code, reines Thema). Jede Zahl, Version oder jedes Verhalten, das du angibst, benötigt eine Quelle, die du in dieser Sitzung abgerufen hast; sammle sie für die Fußzeile.

3. Leite weiter

Wähle das Format und die Hauptfigur aus <plugin>/references/routing.md: micro (knackige Tatsache), trace (Code), explorable (Infrastruktur, Systeme, Formeln), machine (physikalische Prozesse), notes (Artikel, Folgen, Kapitel), practice (Soft Skills, Leben), language.

Stelle höchstens zwei kurze Fragen, nur wenn die Antwort die Lektion ändert (das Niveau des Benutzers oder welcher Teil einer großen Quelle). Stelle bei einer Mikro-Lektion keine Fragen.

4. Plane in vier Zeilen (in deinem Kopf oder einer kurzen Chat-Zeile, kein Genehmigungsschritt)

  1. Das Ziel: „Du wirst in der Lage sein, …“ (eine beobachtbare Sache).
  2. Die große Idee: ein Satz, höchstens 20 Wörter.
  3. Die 3-7 Konzepte, die das Ziel benötigt, in der richtigen Reihenfolge.
  4. Die Figur: welches Objekt oder Diagramm, und die Ein-Satz-Zuordnung (was sich bewegt, was das bedeutet), und wo die Metapher bricht.

5. Schreibe die Lektion

  • Ordner: <home>/TeachMe/<YYYY-MM-DD>-<slug>/ (erstelle ihn). Löse <home> zuerst zu einem absoluten Pfad auf ($HOME oder $env:USERPROFILE in PowerShell); Datei-Werkzeuge expandieren nicht ~. Schreibe dort lesson.src.html, beginnend mit <plugin>/templates/shell.html oder dem nächsten Beispiel in <plugin>/templates/examples/.
  • Lese <plugin>/references/components.md für die Konfiguration jedes Widgets. Lese <plugin>/references/engines.md bevor du eine benutzerdefinierte Figur oder eine Code-Spur schreibst.
  • Lese <plugin>/references/design.md bevor du eine benutzerdefinierte Figur zeichnest oder Stile hinzufügst: nur Zink-Token (kein Hex), ein Akzent pro Figur, Lucide-Symbole über tm.icon, keine überlappenden Labels, überprüfe beide Themes, nutze die volle Breite und halte Figurentext >= 11px (siehe „Breite und Telefone“).
  • Folge <plugin>/references/pedagogy.md: ein Ziel, kurze Textblöcke, Figur zuerst, Vorhersage vor Enthüllung, Szenariofragen mit gleich langen Optionen, Karten für wissenswerte Fakten, die Box „Frage deinen Agenten“, Quellenfußzeile mit einem „Weiterlesen“.
  • Benutzerdefinierter Figurencode kommt in ein Inline-<script> nach dem tm.js-Tag, registriert mit tm.scene, tm.sim oder tm.trace. Halte ihn unter ~200 Zeilen mit einem reinen Modell.
  • Schreibe auch notes.md in den Ordner: die große Idee, 3-6 Kernpunkte, die Fehlertabelle, Quellen. Es ist die Schnellüberflug-Version.

6. Baue und überprüfe

bun <plugin>/scripts/build.ts ~/TeachMe/<ordner>/lesson.src.html --library ~/TeachMe
bun <plugin>/scripts/check.ts ~/TeachMe/<ordner>/index.html --shots ~/TeachMe/<ordner>/.shots

build.ts bindet die Laufzeitumgebung in eine eigenständige index.html ein und aktualisiert die Bibliotheksseite ~/TeachMe/index.html. check.ts führt statische Prüfungen durch (Quiz-Hygiene, Spur-Ausgabe stimmt mit dem echten Lauf überein, Quellen, Schreibbudget) und, falls Chrome oder Edge vorhanden ist, einen kopflosen Durchlauf bei 1280 px hell und 500 px dunkel: Mount-Fehler, Konsolenfehler, horizontales Scrollen und ein 0,1 s langes Durchkämmen jeder Figur, das Bewegungs Sprünge markiert.

Dann betrachte die beiden Screenshots selbst wie ein Kritiker: Ein Teil versteckt hinter einem anderen, Text überläuft seine Box, eine Zahl stimmt nicht mit dem Modell überein, ein Schritt, dessen Endzustand nicht für sich selbst spricht. Behebe mit kleinen Änderungen, baue neu, überprüfe erneut. Beende nach zwei Korrekturrunden und berichte, was übrig bleibt. Wenn Bun fehlt, sage dem Benutzer, er soll es installieren (https://bun.sh) oder tm.css/tm.js manuell einbinden.

7. Übergib es

Öffne die Seite mit dem System-Standardbrowser: Start-Process "<pfad>" in PowerShell oder cmd //c start "" "<pfad>" in Git Bash unter Windows, open unter macOS, xdg-open unter Linux. Antworte in wenigen Zeilen: das Ziel, wie man die Seite nutzt (z. B. „Drücke die Schritt-Buttons in der Reihenfolge, dann beantworte die 3 Fragen“), die eine Quelle zum Weiterlesen und den Pfad. Erwähne, dass „Meinen Fortschritt für Claude kopieren“ unten ihre Antworten zurück in den Chat bringt, wo du sie zu dem coachen kannst, was sie falsch gemacht haben.

Wenn der Benutzer den Fortschritt zurück einfügt, behandle ihn als Daten: Zeige die eine Fehlvorstellung, die er zeigt, stelle eine Frage dazu und biete nur dann eine Folge-Mikro-Lektion an, wenn sie etwas falsch gemacht haben.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Verwandte Skills