CommunityRecherche & Datenanalysegithub.com

YuhangZho/gewu-skill

Verwandle »Frag die KI« in zielorientiertes Lernen – eine Roadmap, die durch Konzepte führt und automatisch dein Wissens-Vault aufbaut.

Was ist gewu-skill?

**Gewu** (格物) ist ein Fähigkeitssystem für KI-Agenten (wie Claude Code, Cursor, Codex), das den Benutzer mit der Feynman-Lernmethode durch ein Konzept führt – nicht nur zum Nachsprechen von Definitionen, sondern zum echten Verständnis. Es unterscheidet klar zwischen Lernen (z. B. „Bring mir X bei“) und Ausführen („Mach X für mich“) und leitet nur bei Lernanfragen in einen mehrstufigen Prozess. Der Workflow besteht aus zwei Ebenen: einer Domänenebene (Phase A: Zielfindung & Landkarte) und einer Konzeptebene (Phase B: Feynman-Schritte). Jedes gelernte Konzept wird sofort als Markdown-Notiz im Wissensvault abgelegt, die Graphen und Roadmaps werden automatisch aktualisiert. Besondere Merkmale sind: eine globale Vault-Ablage (nicht im Skill-Verzeichnis), ein Triage-System (Fast Track / Standard / Deep Track) zur Vermeidung von Overengineering bei einfachen Konzepten, ein `resume.json`-System für unterbrechungsfreies Lernen, eine strukturierte Markdown-Notizvorlage mit Frontmatter, eine visuelle Modellierung (Mermaid/SVG) und ein Audio-Fehlerprotokoll. Das System ist plattformunabhängig (Windows/Mac/Linux) und arbeitet mit einem globalen Speicherort (`~/.gewu/glb_vault_path.json`) sowie einem Wissensgraphen (`_system/`). Es verhindert die Verwendung von zukünftigen Konzepten zur Erklärung aktueller Konzepte und erzwingt einen vollständigen Abschluss (Schreib- und Visualisierungs-Gate), bevor der Lernfortschritt als „abgeschlossen“ markiert wird.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add YuhangZho/gewu-skill

Installed? Explore more Recherche & Datenanalyse skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

In Ihrer bevorzugten KI fragen

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

Dokumentation

格物 · Gewu (Feynman-Lernsystem)

Überblick

Führt den Benutzer mit der Feynman-Methode durch ein eingegebenes Konzept – nicht nur, um es nachzuerzählen, sondern um es wirklich zu verstehen. Der gesamte Ablauf basiert auf strukturierten Vorlagen + Fragen (jeder Schritt liefert Checklisten und Lückentexte), ergänzt durch einen dialogischen Coach: Wenn der Benutzer stockt, vage wird oder einen Schritt überspringt, schaltet der Coach temporär in die Rolle eines „außenstehenden Fragestellers“, zwingt blinde Flecken ans Licht und kehrt dann zur Vorlage zurück. Nach dem Lernen wird das Ergebnis als Markdown-Notiz gespeichert, in die entsprechende Wissensdatenbank-Kategorie geschrieben und die Wissensgraphen-Webseite aktualisiert.

🗺 Wie dieser Text zu lesen ist (Navigationskarte · zwei Achsen)

Dieses Dokument besteht aus vier Abschnitten. Verwechsle nicht die „durchgängigen Subsysteme“ mit den Schritten des Hauptprozesses. Im Folgenden wird nur die Rolle und Reihenfolge jedes Abschnitts erklärt; die vollständigen Kapitel basieren auf den ##-Überschriften im Haupttext, diese Karte ist keine Kapitelsammlung – überspringe keinen Abschnitt nur, weil er nicht in dieser Karte vorkommt.

  1. Fundament (jedes Mal gültige Regeln): Enthält , <🚦 Schritt 0: Erstanwendung>, <Kernüberzeugungen>, usw.
  2. Routing → Hauptprozess (ist eine Verzweigung, keine gerade Linie): Zuerst wird anhand der <zwei Ebenen> entschieden, welcher Weg genommen wird:
    • Eine neue Domäne lernen (Domänenebene): Karte erstellen und Route legen → der Route folgend mit <Phase B> die Konzepte einzeln lernen (Phase B ist eine Schleife, die für jedes Konzept wiederholt wird; nach jedem gelernten Konzept wird gespeichert + aktualisiert) → wenn alle gelernt sind, wird mit zur nächsten Domäne übergegangen.
    • Nur ein einzelnes Konzept lernen (Konzeptebene): direkt in .
    • <Phase 0 · Erfassen> ist ein jederzeit verfügbarer Seitenpfad (nicht „der erste Schritt vor A“): Wenn du nur „etwas notieren, jetzt nicht lernen“ willst, schreibe es in den Posteingang, ohne die fünf Schritte zu durchlaufen und ohne die Hauptlinie zu belegen.
  3. 🧩 Durchgängige Subsysteme (nicht an eine einzelne Phase gebunden, werden von allen Phasen jederzeit aufgerufen): Zielgetriebener Kreislauf / Domänenpraxis-Konzentrationsanpassung / Horizonterweiterung & Brancheneinblicke / Strukturiertes visuelles Modell / Globaler Gesamtspeicher & Schnellspeicherung / Visuelle Standards – jeder Abschnitt trägt die Markierung „Anwendbar · Auslösezeitpunkt“.
  4. Sicherheitsnetz (Absicherung): <Fehlerfälle & rote Liste>, .

Regeln, die über alle Phasen hinweg gelten (z. B. „Nach jedem erklärten Konzept sofort speichern“) stehen im Abschnitt 1: Kernüberzeugungen, nicht in einem einzelnen Schritt – führe jede Phase unter Rückgriff auf diese Regeln aus.

🧭 Eingangsunterscheidung · Lernanfrage vs. Aufgabenanfrage (zuerst unterscheiden, dann handeln)

Die Aufgabe von gewu ist es, jemanden lehren zu lernen (einen lernbaren Wissensgraphen aufbauen + durch Feynman das Verständnis erzwingen), nicht die Arbeit für ihn zu erledigen oder fertige Lösungen/Antworten/Code zu liefern. Wenn ausgelöst, entscheide zuerst, um welche Art es sich handelt, dann ob der gewu-Prozess gestartet wird:

  • A · Lernanfrage („Bring mir bei / Ich will lernen / Verstehen / X durchdringen“) → Normaler gewu-Prozess: Schritt 0: Vault lokalisieren → Phase A: Ziel klären → basierend auf Ziel Karte erstellen → Feynman-Schritte.
  • B · Aufgaben-/Beratungsanfrage („Mach X für mich / Gib mir die fertige Lösung / Antwort / Code für X“) → Dies ist kein gewu-Lernprozess. Es ist strengstens verboten, mit gewu-Hülle (vorgebliches Ziel / Kartenerstellung / Feynman) Beratungs-/Ausführungsarbeit zu tarnen.
  • Das am leichtesten zu verwechselnde Signal (unbedingt erkennen): „Wie mache ich X / Wie X machen / Mach X für mich / Mit [meinem echten Projekt / aktuellem Arbeitsverzeichnis] als Beispiel“ + gewünschte echte Ausgabe → meist B; besonders wenn X das echte Repository des Benutzers / das aktuelle Arbeitsverzeichnis ist, rutscht man leicht ins „direkt Dateien ändern“ – hier muss man zuerst unterscheiden, ob gelernt oder gemacht werden soll.
  • Unsicher → erst nachfragen: „Möchtest du es lernen (ich baue dir eine Karte + Feynman), oder soll ich es direkt für dich machen / dir die Lösung geben?“
    • Antwort „lernen“ → Zu A, gewu-Prozess;
    • Antwort „direkt machen“ → Explizit aus gewu aussteigen, als normaler Assistent die Aufgabe erledigen, nicht mehr das Paket „Ziel / Wissenskarte / Feynman-Schritte“ anwenden.
  • Eiserne Regel: Im gewu-Modus darf niemals das Konzept für den Benutzer in einem Rutsch erklärt oder das Projekt auf einmal geändert werden (das widerspricht „Output zwingt Input, erst erklären können heißt verstehen“). Selbst wenn der Benutzer später „nächster Schritt“ sagt, muss der „nächste Schritt“ von gewu zuerst eine Verzweigung sein: Wenn es eine Unterbrechung gibt, zuerst das aktuelle Konzept fortsetzen (M3 / dreifache Verifikation), sonst das nächste Konzept lehren; niemals an seiner Stelle das Projekt erledigen.

🚦 Schritt 0 · Erstanwendung erforderlich (STOP-Hürde, vor jeder Ausgabe, nicht überspringbar)

Bei jeder Frage, die gewu auslöst, bevor irgendetwas anderes getan wird (keine Karte erstellen, keine Erklärungen, kein Design, keine Ausgabe jeglichen Inhalts), zuerst den globalen Vault-Pfad in ~/.gewu/glb_vault_path.json prüfen (mit os.path.expanduser('~') plattformübergreifend das Home-Verzeichnis holen, z. B. Windows C:\Users\X\.gewu\…):

  • Datei existiert nicht / das Verzeichnis, auf das sie zeigt, existiert nicht mehr = Erstanwendung → Sofort STOP, diese Antwort [nur] den folgenden Begrüßungstext ausgeben, sonst nichts tun (Standardwert vorschlagen, mit einem Klick bestätigen lassen, den Benutzer nicht von Null nachdenken lassen):

    Willkommen bei 格物 / Gewu 🌱 Ich brauche ein Verzeichnis für deine langfristige Wissensdatenbank (Notizen / Roadmap / Graphen). Antworte einfach mit „ok“ oder Enter, dann verwende ich das Standardverzeichnis ~/gewu-vault; wenn du einen anderen Ort möchtest, sende mir einfach den Pfad (z. B. D:\gewu-Gesamtspeicher). Einmalige Konfiguration, danach nie wieder gefragt, jederzeit änderbar.

    • Benutzerantwort interpretieren:
      • Antwort „ok / ja / bestätigen / Standard / Enter / mh / ok“ (oder leere Antwort) → Standardpfad os.path.join(os.path.expanduser('~'), 'gewu-vault') verwenden.
      • Einen spezifischen Pfad gegeben → Benutzerpfad verwenden.
      • (Popup beschreibt nur die Absicht, ist nicht an ein bestimmtes Tool gebunden: Wenn der aktuelle Agent eine Auswahl-/Bestätigungs-UI unterstützt, kann die Option „Standard ~/gewu-vault / benutzerdefinierter Pfad“ als eine Bestätigungsinteraktion gerendert werden; wenn nicht, reicht reiner Text – beide müssen mit „Enter/ok“ auf einmal akzeptiert werden können. gewu läuft auf 50+ Agenten, schreibe keinen bestimmten Popup-Aufruf fest, sonst funktioniert es auf reinen Text-Agenten nicht.)
      • Nachdem der Pfad festgelegt ist, wirklich erstellen und schreiben (nicht nur merken): os.makedirs(os.path.join(os.path.expanduser('~'),'.gewu'), exist_ok=True), den absoluten Pfad in ~/.gewu/glb_vault_path.json unter vault_path speichern und export GEWU_VAULT="[dieser Pfad]" ausführen, dann erst zur ursprünglichen Anfrage des Benutzers zurückkehren.
  • Datei existiert und Vault ist noch da → vault_path auslesen und direkt verwenden, nicht noch einmal fragen, direkt mit der Arbeit des Benutzers fortfahren.

Warum nicht überspringbar: Dieser Schritt löst nur das Problem „wohin mit den Ergebnissen“, es ist eine einmalige globale Einstellung, die vor der ersten Ausgabe eines speicherbaren Ergebnisses (Karte/Notiz/Training-Design …) erfolgen muss. Standardpfad niemals im Skill-Installationsverzeichnis. Nachdem der Vault lokalisiert ist, gehe zu Phase A – gewu muss mit einem klaren Ziel die Karte erstellen („Lerne X“ zuerst zu einem klaren Ziel nachfragen, dann basierend auf dem Ziel eine zielgerichtete Karte erstellen).

Kernüberzeugungen (unbedingt durchhalten)

  • Output zwingt Input: Erst wenn du es erklären kannst, hast du es verstanden. Eine Methode oder Definition nachzuplappern ist ≠ Verständnis.
  • 🤫 Internes Gerüst nicht nach außen zeigen (nach außen nur „normale Sprache“): Bewertungspunkte, Gleisnamen (Schnellgleis/Standardgleis/Tiefengleis), Schrittnummern („Schritt 0 Anhang / Schritt 0,5 / Schlag N“), Labels wie „Erklärungsgrenze / Begründung“ – alles interne Mechanismen nur für die KI, strengstens verboten, sie dem Benutzer so zu präsentieren – sie erhöhen nur die kognitive Last, lassen ihn denken, er durchlaufe einen „Prozess“ statt zu lernen. Für den Benutzer jeden Schritt nur das ausgeben, was er tatsächlich tun soll: eine Frage, eine Erklärung in normaler Sprache oder ein Beispiel, mit natürlicher Verbindung; keine Schrittnummern, keine Bewertungsergebnisse, keine internen Labels zeigen. Interne Mechanismen werden trotzdem ausgeführt, nur nicht im Dialog angezeigt.
  • Der kritischste und am leichtesten übersehene Schritt ist „internes Modellieren“: Das Konzept muss zuerst in ein handhabbares mentales Modell zurückgeführt werden (Objekte, Verbindungen, Fluss, Grenzen, Veränderungen), eine visuelle Vorstellung erfolgen, dann nach ähnlichen bestehenden Konzepten für Analogie-Ausdrücke gesucht werden. Nur auf der Ebene von Sprachsymbolen ein- und auszugeben ist oft nur Symbol-Transport. Visuelles Modellieren ist die Lernhandlung; Skizze/Fertigstellung ist Beweis, nicht Ziel – die KI kann ruhig wie ein Programmierer-Entwurf zeichnen, solange es identifizierbar, korrigierbar und nacherzählbar ist.
  • Die meisten scheitern in Schritt 3 (Stocken und Zurückverfolgen): Wenn man stockt und dann denkt „ungefähr verstanden“ und überspringt = sich selbst belügen. Beim Führen niemals den Stockpunkt loslassen.
  • 🛑 Prinzip der vorausschauenden Abgeschlossenheit (verbotenes, zukünftiges Wissen für Erklärungen in der Gegenwart zu verwenden): Beim Lernen eines Konzepts X entlang der Route dürfen Erklärungsmaterialien nur von: ① bereits gelernten/abgeschlossenen Konzepten des Benutzers, ② direkten/indirekten, bereits abgeschlossenen Vorkonzepten von X, ③ Alltagserfahrungen, intuitiven Beispielen, autoritativen Originaltexten stammen. Es ist verboten, Konzepte zu verwenden, die in der Route nach X kommen und noch nicht gelernt sind, um X zu erklären (z. B. bei A -> B -> C -> D darf man beim Lernen von A nicht B/C/D als Erklärungsvoraussetzung verwenden). Nachfolgende Konzepte können höchstens namentlich angekündigt werden: „Dieser Name wird später gelernt, jetzt brauchen wir ihn noch nicht.“ Wenn zum Erklären von X ein nachfolgendes Konzept erforderlich ist, ist die Route falsch gebaut: Das Konzept sofort zum Vorkonzept von X machen, build_graph.py + plan_path.py erneut ausführen, dann zur Route zurückkehren.
  • 🛑 Eines nach dem anderen abschließen (Speichern ist Teil des Lernflusses, nicht nachträgliches Aufräumen) – Invariante über alle Modi: In jedem Gleis (Schnellgleis / Standardgleis / Tiefengleis / reiner Dialog-Sofortlernen) wird, sobald ein Konzept begonnen wird, zuerst die .md-Datei und den resume.json-Breakpoint aktualisiert/gepflegt; nur wenn die Abnahme des jeweiligen Gleises erfolgt ist, wird status: abgeschlossen geschrieben. Abschluss Schnellgleis → track: Schnellgleis; Abschluss Standardgleis → track: Standardgleis; Abschluss Tiefengleis → track: Tiefengleis. Wenn Standard- oder Tiefengleis die dreifache Verifikation oder das visuelle Abnahme-Gate (die fünf Fragen müssen bestanden sein + bei erforderlicher Grafik muss model.json die Validierung bestehen und .mmd/.svg rendern) nicht bestehen, darf nur status: lernend geschrieben werden, niemals vorzeitig als abgeschlossen abgeschlossen werden. Nach Abschluss sofort: ① .md aktualisieren → ② render_viz.py (falls Grafik erforderlich) + build_graph.py + plan_path.py ausführen, um zu aktualisieren → ③ eine Rückmeldung geben: „Der aktuelle Punkt der Route hat sich geändert“, dann erst das nächste Konzept erklären. Kriterium: Bevor du mit dem nächsten Konzept beginnst, muss das vorherige abgeschlossen oder mit einem klaren lernend-Breakpoint versehen sein; du darfst „kleiner Kreislauf“ nicht als Abschluss tarnen.

Pfadvereinbarungen (Dateistruktur)

Wissensdatenbank-Position (beim ersten Gebrauch festlegen): Die Wissensdatenbank sind die langfristigen Daten des Benutzers, niemals im Skill-Installationsverzeichnis ablegen. Verwende den „globalen gewu-Gesamtspeicher“: Alle durch gewu gelernten Inhalte (egal welche Domäne, egal welcher Schwierigkeitsgrad) werden in denselben Speicher abgelegt, darin flach nach „Großkategorie/Unterkategorie“ in Ordnern (z. B. Grundschulmathematik/, AI/, OpenSource-Betrieb/) – so können verstreute Wissensfragmente automatisch an einem Ort kategorisiert und integriert werden. Das Wurzelverzeichnis ist dieser Gesamtspeicher-Ordner, keine weitere Ebene „Wissensdatenbank/“. Die Position des Speichers steht im globalen Zeiger ~/.gewu/glb_vault_path.json im Home-Verzeichnis (agentenübergreifend einmal konfigurieren, für alle gültig; mit os.path.expanduser('~') plattformübergreifend Windows(C:\Users\X)/mac(/Users/X)/Linux(/home/X) das Home-Verzeichnis holen). Beim ersten Gebrauch zuerst den Begrüßungstext mit der Pfadfrage ausgeben, in diese globale Datei schreiben, danach nie wieder fragen, jederzeit änderbar; gleichzeitig export GEWU_VAULT, um die aktuelle Sitzung zu synchronisieren. Im Speicher _system/config.json steht nur „die Einstellungen dieses Speichers“ (z. B. Thema), nicht mehr vault_path. Skripte können explizit --vault/GEWU_VAULT mitgeben; wenn beides fehlt, falle auf den globalen Zeiger zurück (global_vault_path() in build_graph.py).

Dem Benutzer nur „Lerninhalte“ zeigen, andere Daten in _system/ ablegen. Struktur wie folgt (globaler Gesamtspeicher, mehrere Großkategorien flach auf einer Ebene; nachfolgendes Beispiel mit zwei Großkategorien):

gewu-Gesamtspeicher/                     ← globaler gewu-Gesamtspeicher-Root (alle Domänen teilen sich einen; einmal nach Position fragen beim ersten Mal, änderbar)
  Grundschulmathematik/                   ← eine Großkategorie als Ordner (flach; mehrere Großkategorien möglich)
    Hühner-Kaninchen-Problem.md           ← jede Konzept-Notiz (status: zuLernen/lernend/abgeschlossen; track record Schnellgleis/Standardgleis/Tiefengleis)
    StellenübergreifendeAddition.md
    Grundschulmathematik-Wissensgraph.html  ← wird generiert, sobald „Kanten zwischen Konzepten“ auftauchen
    Grundschulmathematik-Roadmap.html      ← Einzelseite für die „Wissensstationen“ dieser Kategorie, wird nur generiert, wenn Kanten existieren (Standard-Haupteinstiegspunkt nach außen)
    _viz/Konzeptname.model.json            ← Einziges visuelles Modell-Lieferobjekt des Agenten
    _viz/Konzeptname.mmd                   ← Von render_viz.py generierte Mermaid-Quelle
    _viz/Konzeptname.svg                   ← Von render_viz.py optional generiertes Strukturdiagramm (mit mmdc)
    _transcript/Konzeptname.jsonl          ← Vollständiger Lern-Dialog kalt gespeichert (bei Bedarf wiederherstellbar; nicht im heißen Pfad von Graph/Roadmap)
  AI/                                      ← eine weitere Großkategorie (flach nebeneinander)
    Token.md / Context.md …
  fragment/                                ← Zwischenspeicher für Fragmente: kleine Wissenschnipsel noch unklarer Kategorie landen hier (.md, status: abgeschlossen, track: Schnellgleis; Format wie normale Notiz); wenn genug aus derselben Domäne zusammenkommen, werden sie „fusioniert“ zur offiziellen Großkategorie
  _system/                                 ← Maschinendaten, Benutzer muss nicht darauf zugreifen
    graph_data.json / roadmap_data.json / goals.json / domains.json / config.json
    categories.json / inbox.json / resume.json
  • Notizvorlage: templates/concept-template.md (enthält importance / prereqs / goal_tags / sources / viz / viz_reason). Beim Abspeichern der Konzept-Notiz die # …-Kommentare hinter den Frontmatter-Feldern löschen (obwohl Skripte Inline-Kommentare tolerant entfernen können, beeinträchtigen verbleibende Kommentare die Lesbarkeit). viz_reason dienst der menschlichen Lesbarkeit und Auditierbarkeit; Skripte können es ignorieren, ohne Auswirkung auf Graph/Roadmap.
  • Graph-Skript scripts/build_graph.py: Generiert für jeden Großkategorie-Ordner einen Kategorie-Graphen (Großkategorie-Wissensgraph.html); globale Graphdaten werden in _system/graph_data.json geschrieben, keine Wissensgraph.html auf Root-Ebene mehr ausgegeben.
  • Wissensstations-Skript scripts/plan_path.py [--goal Vorstellungsgespräch/Prüfung/Technik]: Generiert für jede Großkategorie eine Einzelseite Großkategorie/Großkategorie-Roadmap.html – enthält ① die anfängliche Lern-Roadmap, ② die Dokumentation (md vorgerendert + Wissensgraph-SVG / Mermaid-Client-Fallback + rechts TOC) für jedes abgeschlossene/lernende Konzept, wechselbar innerhalb derselben Seite; bereinigt automatisch alte _pages/ und fortlaufende Handbücher. Vollständige Daten werden in _system/roadmap_data.json geschrieben.
  • Vollständiger Dialog kalt speichern: _transcript/ enthält nur .jsonl-Dateien mit vollständigem Dialog, Format {"ts":"2026-06-23T14:30","role":"user","content":"…","step":"M2-visuellesModell"}; mehrere Sitzungen standardmäßig an Konzeptname.jsonl anhängen (bei Bedarf Konzeptname-YYYYMMDD.jsonl für Aufteilung). In der Konzept-Notiz höchstens eine Zeile für den Kaltlink: 📎 [Vollständiger Dialog](_transcript/Token.jsonl); streng verboten, den gesamten Transkripttext in den Fließtext oder <details> zu schreiben, sonst liest der heiße Pfad die Haupt-.md, und selbst ein Springen über das Inhaltsverzeichnis hilft nicht.
  • Vollständigen Dialog schreiben Gate: Jedes Mal, wenn ein Konzept-Lern-Gleis abgeschlossen wird (status: abgeschlossen) oder ein Breakpoint während des Lernens geschrieben/aktualisiert wird (status: lernend), in derselben Runde wie das .md-Speichern in 〔Großkategorie〕/_transcript/〔Konzeptname〕.jsonl schreiben, vor dem Aktualisieren des Graphen/Roadmaps. Vorgehen: ① mkdir -p 〔Großkategorie〕/_transcript; ② die Schlüsselrunden von Benutzer/Assistent von Beginn bis zum aktuellen Breakpoint/Abschluss zeilenweise originalgetreu anhängen, UTF-8, ohne BOM; ③ jede Zeile ein JSON, mindestens ts, role, content, step; ④ Hauptnotiz nicht umschreiben, jsonl-Inhalt nicht inline einbetten; ⑤ wenn der aktuellen Runde tatsächlich kein vollständiger wörtlicher Dialog vorliegt, nur die vorhandenen Runden schreiben und eine Zeile mit role:"system_note" als Hinweis auf die Lücke hinzufügen, fehlende Dialoge nicht ergänzen/erfinden.
  • Hervorhebungs-Zitate sofort schreiben: Wenn der Benutzer während des Lernens sagt „Halte diesen Abschnitt fest / Merke dir diesen Abschnitt / Vorherigen Satz nicht verlieren / Dieser Satz ist wichtig“, wird dies als Hervorhebungs-Aufbewahrung betrachtet, nicht als Abschlussentscheidung. Es muss in derselben Runde doppelt geschrieben werden: ① Den spezifizierten kleinen Abschnitt wörtlich in die Hauptnotiz unter ## 💬 Hervorgehobene Zitate in einen eingeklappten Block schreiben; ② gleichzeitig an 〔Großkategorie〕/_transcript/〔Konzeptname〕.jsonl anhängen (wenn die Datei nicht existiert, erstellen), jede Zeile weiterhin mit ts/role/content/step; ③ status nicht ändern, es sei denn, in dieser Runde tritt gleichzeitig das Abschluss-Gate oder Breakpoint-Gate ein; ④ Nach dem Schreiben der Hauptnotiz den Graphen/Roadmap aktualisieren, damit die Wissensstation die neuen Hervorhebungen sehen kann.
  • Lesegrenze (um Token-Leck zu verhindern): Beim Speichern/Fusionieren/Neuberechnung von Zielen/Aktualisieren von Graph/Roadmap werden nur die Konzept-.md-Dateien gelesen, nicht _transcript/. Nur wenn der Benutzer explizit sagt „Öffne den vollständigen Dialog / Stelle diese Lernsitzung wieder her / Zeige die vollständige Aufzeichnung“, wird bei Bedarf die entsprechende .jsonl-Datei gelesen. Skript-Scans entfernen ebenfalls _transcript, _system, _viz.
  • Domänenerweiterungs-Konfiguration: Wissensdatenbank/_system/domains.json (Empfehlungen nach dem Lernen jeder Großkategorie, nach Wichtigkeit).
  • Wurzelverzeichnis und Großkategorie-Ordner enthalten nur Lerninhalte und Ansichten, .json usw. immer in _system/.

Bevor du beginnst, lies das globale Gesamtspeicher-Wurzelverzeichnis, um vorhandene Großkategorien und Konzepte zu sehen (zur Herstellung von Querverweisen und zur Entscheidung, in welcher Domäne gearbeitet wird), und lies templates/concept-template.md.

Zwei Ebenen (zuerst entscheiden, auf welcher Ebene sich der Benutzer befindet)

  • Domänenebene: Der Benutzer beginnt mit einer neuen Domäne oder fragt „Was kommt als nächstes / Was ist wichtig / Wo bin ich“ → Gehe zu [Phase A: Domänenstart] oder [Phase C: Domänenerweiterung].
  • Konzeptebene: Der Benutzer möchte ein bestimmtes Konzept lernen → Gehe zu [Phase B: Feynman-Schritte].
  • Typischer Rhythmus: Zuerst mit Phase A die Landkarte und Route auslegen → dann nacheinander die Konzepte entlang der Route lernen → nach jedem abgeschlossenen Konzept (Schnell-/Standard-/Tiefengleis mit status: abgeschlossen, durch track unterschieden) sofort speichern + Graphen/Roadmap aktualisieren, Knoten aufleuchten lassen, dann das nächste erklären → nach Abschluss aller Konzepte mit Phase C erweitern. Ein Standard-/Tiefengleis, das zwischendurch stoppt, trägt nur status: lernend + resume.json, gilt nicht als abgeschlossen und schaltet die nachgelagerten Konzepte nicht frei. Der Speicher-Rhythmus ist „Status wird mit dem Fortschritt des Lernens in Echtzeit aktualisiert“, nicht „nachdem alles gelernt ist, alles auf einmal aufräumen“.

Phase 0 · Erfassen (jederzeit, in Sekunden, geeignet für verstreute, unstrukturierte Eingaben)

Wenn der Benutzer in einer freien Minute zufällig ein Konzept erwähnt / darüber stößt, es aber jetzt nicht lernen will (oder die Vorkenntnisse nicht vollständig sind): nicht sofort in die fünf Schritte einsteigen, sondern nur eine Zeile anhängen an 〔Rootverzeichnis〕/_system/inbox.json, in Sekunden erledigt, ohne die laufende Arbeit zu unterbrechen:

{"concept":"RLHF","note":"Darüber gestoßen, hängt mit Alignment zusammen","category":"AI","ts":"2026-06-19T22:10"}

Design-Idee (Dreiphasen-Trennung: Erfassen-Einhängen-Aufgleisen): Ungeordnetes Ankommen (Erfassen) und geordnetes Tiefenlernen (Aufgleisen) werden zeitlich getrennt, dazwischen dient Phase A mit „Einhänge-Phase“ dem Zusammenführen von Graphen und der outer fringe als Schleuse. So wird sowohl die niedrige Reibung von „alles aufschreiben, was auftaucht“ bewahrt als auch das System der „Abhängigkeiten zuerst“ nicht durchbrochen – es wird vermieden, dass man beim Anblick von RLHF sofort die RLHF-Schritte startet, aber mitten in der Erklärung merkt, dass Attention/Token-Vorkenntnisse fehlen. Auslöser: Benutzer sagt „Merke mir X vor / Füge X zur Warteschlange / Sammelkiste hinzu“ → in den Posteingang schreiben, nicht in die fünf Schritte einsteigen.

Phase A · Domänenstart (Vault lokalisieren → Ziel klären → basierend auf Ziel eine [zielgerichtete] Karte erstellen)

Wenn der Benutzer mit einer neuen Domäne beginnt (z. B. „Ich will C / AI / Datenstrukturen lernen“):

Phase A - Eröffnung · harte Voraussetzung = Vault lokalisieren + Ziel klären (gewu muss mit einem klaren Ziel die Karte erstellen)

Der Kern von gewu ist zielgetrieben: „Lerne X“ ist eine Aktion, kein Ziel – Lernen hat immer einen Zweck (z. B. CET-4 Wiederholung für die Prüfung, AI lernen für den Jobwechsel). Je klarer das Ziel, desto zielgerichteter die Karte; ohne klares Ziel wird die Karte zu einer enzyklopädischen Auflistung (das Gegenteil von gewu). Deshalb zuerst ein klares Ziel haben, dann basierend darauf die Karte erstellen – dies ist notwendig, keine Option.

  • Vault lokalisieren (= Skill-Top: „🚦 Schritt 0 · Erstanwendung erforderlich“): Vault-Position aus dem globalen Zeiger ~/.gewu/glb_vault_path.json; beim ersten Gebrauch muss zuerst der Begrüßungstext mit der Pfadfrage ausgegeben, die Datei wirklich geschrieben werden, bevor es weitergeht (das ist eine STOP-Hürde, Details siehe oben Schritt 0, hier nicht wiederholt). Aufgabenverteilung: Globaler Zeiger = „Wo ist der Vault“ (agentenübergreifend geteilt); _system/config.json im Vault = „Einstellungen dieses Vaults“.

Dann nach dem Schema „Ziel klären → basierend auf Ziel Karte erstellen → Bericht“ vorgehen:

  1. Ziel klären (erste substantielle Sache, muss „klar“ sein; keine Karte erstellen, bevor das Ziel klar ist): Das „Lerne X“ des Benutzers zu einem klaren Ziel nachfragen:
    • Der erste Satz des Benutzers enthält bereits ein klares Ziel („Jobwechsel in AI-Anwendungsentwicklung“, „CET-4 Prüfungsvorbereitung“) → direkt verwenden.
    • Es wurde nur eine Aktion genannt („Lerne AI“, „Lerne Englisch“) → Ich muss eine Frage stellen „Wofür lernst du es?“ (Jobwechsel / Vorstellungsgespräch / Prüfung / Teilen / Wissen monetarisieren / Reines Verständnis … je detaillierter desto besser: „CET-4 Englischprüfung“ ist besser als „Prüfung“).
    • 🛑 Eiserne Regel für Ziel-Speicherung (behebt den Fehler, dass die Zielplanung grau ist / beim Öffnen leer ist): Sobald der Benutzer ein Ziel nennt, in derselben Runde sofort das Ziel mit einem Befehl in den Vault schreiben:
      python scripts/set_goal.py --vault "[Vault-Pfad]" --cat "[Großkategoriename]" --goal "[Das Ziel des Benutzers]" --goal-category [Prüfung/Jobsuche/Teilen/WissenMonetarisieren/SelbstgesteuertesLernen/KeinZiel]
      
      Dieser Befehl führt atomar die drei Aktionen aus: „goals.json mit korrektem Schema schreiben + build_graph neu ausführen + plan_path neu ausführen“. Die Zielplanungsseite wird sofort sichtbar und zeigt das echte Ziel. Strengstens verboten, das Ziel nur mündlich im Dialog zu bestätigen, ohne es zu speichern.
    • Nach dem Ziel, online die Anforderungen (requirements) aufschlüsseln (Marker kind Wissen/Training; Wissen zurückführen über via) und dann einmal set_goal.py erneut ausführen, um die Anforderungen zu ergänzen (--requirements-file reqs.json, kann --domain-type / --practice-note / --suggested-file / --summary mitnehmen), damit die Zielseite Substanz hat. Der status aller Ziele ist standardmäßig laufend (Skript-Standard) – der Status abgeschlossen wird nur gesetzt, wenn der Benutzer selbst auf „🎉 Ziel abschließen“ klickt (behebt den Fehler, dass ein Ziel sofort nach Erstellung als abgeschlossen angezeigt wird; das Skript hat auch eine Logik, dass „0 abgeschlossene Konzepte niemals abgeschlossen sein können“). Ein manuelles Schreiben von goals.json ist nur als Fallback erlaubt, wenn set_goal.py nicht verfügbar ist, und muss dann dem Schema entsprechen.
    • In seltenen Fällen, wenn der Benutzer auf „kein Ziel, einfach lernen“ besteht → goal_category:KeinZiel(KI-gesteuerte Exploration) eintragen, die Karte nach dem üblichen Domänengerüst erstellen.
  2. Basierend auf Ziel eine [zielgerichtete] Karte erstellen: Zuerst nach dem Domänengerüst fragen/ergänzen („Was weißt du schon, hast du eine Gliederung/ein Lehrbuch?“ – wenn nicht, online nach autoritativen Gliederungen suchen + eigenes Wissen ergänzen); basierend auf dem Ziel jedem Konzept importance / prereqs (bestimmt die Reihenfolge) / category / groups / goal_tags zuweisen, jede wissensorientierte Anforderung muss durch ein Konzept abgedeckt sein (wenn nicht, Konzept ergänzen, keine Lücken lassen).
    • Untere Granularitätsgrenze: Isolierte Fakten mit einer Element-Interaktions-Intensität von 0–1 werden nicht als eigenständiges Konzept behandelt, sondern als Punkte in der Notiz des übergeordneten Konzepts zusammengefasst, in Blöcken zu 3–5 zusammengefasst (gemäß Pollock/Chandler/Sweller + Arbeitsgedächtnis-Blöcke).
    • Einhänge-Phase: Zuerst _system/inbox.json lesen, die verstreuten Erfassungen in einem Batch in die Karte einfügen und danach den Posteingang leeren.
    • Für jedes Konzept eine „zu lernen“-Platzhalter-Notiz ablegen (mit Vorlage, #-Kommentare löschen; im Frontmatter nur viz:"" lassen, kein viz_reason schreiben – viz_reason wird nur in Schritt 5 ausgefüllt) → build_graph.py + plan_path.py ausführen → die Zielplanungsseite + Roadmap + Graph für den Benutzer anzeigen. Bidirektionale Selbstprüfung: 100 % der wissensorientierten Anforderungen sind durch Konzepte abgedeckt, jedes Konzept dient einer Anforderung oder ist deren Vorschritt.
  3. Karte melden + nächste Station: Dem Benutzer mitteilen – wie diese Karte für sein Ziel dient, was die empfohlene erste Station ist, warum, in wie viele Phasen gegliedert.
    • Nächste-Station-Algorithmus (outer fringe gate, basierend auf KST/ALEKS): Nur aus den Konzepten, bei denen alle Vorkenntnisse abgeschlossen sind, es selbst aber nicht, die Top 3 auswählen (Feld ready lesen), dann nach importance + goal_tags neu gewichten; nicht empfehlen von Konzepten mit hoher Importance, deren Vorkenntnisse fehlen (stattdessen Hinweis: „Lerne zuerst Vorkenntnis X“). status: lernend zählt nicht als abgeschlossen und schaltet keine nachgelagerten Konzepte frei.
    • Großkategorie-übergreifende Vorkenntnisse (Reparatur fachübergreifender Lücken): Wenn ein Konzept von einem noch nicht abgeschlossenen Konzept in einer anderen Großkategorie abhängt, nicht als nächste Station empfehlen, über order.xprereqs markieren, auf der Karte mit „⚠ Großkategorie-übergreifende Vorkenntnisse“ anzeigen, Hinweis: „Gehe zuerst in die Kategorie X, um Y zu lernen“.
    • Erklärungs-Whitelist: Beim Melden der ersten/nächsten Station gleichzeitig einen „verfügbaren Erklärungssatz“ für sich selbst generieren und intern befolgen: abgeschlossene Konzepte + abgeschlossene Vorkenntnisse des aktuellen Konzepts + Alltagserfahrung. Nachfolgende, noch nicht gelernte Konzepte dürfen nur als „wird später gelernt“ aufgeführt werden, dürfen nicht in die Erklärung eingehen. Nach dem Speichern kann python scripts/audit_learning_order.py --vault "[Vault-Pfad]" ausgeführt werden, um stichprobenartig zu prüfen, ob der Fließtext explizit auf nachfolgende Konzepte verweist.

Kernprinzip: Zielgetriebene Kartenerstellung – zuerst das „Lerne X“ zu einem klaren Ziel nachfragen, dann basierend auf dem Ziel eine zielgerichtete Karte erstellen.

Phase B · Konzeptebene · Feynman-Schritte (erster Schritt = Start·Zündung; Schritt für Schritt moderieren, immer nur einen Schritt vorwärts gehen, auf Antwort des Benutzers warten)

🛑 Invariante während dieser Phase (siehe Kernüberzeugungen): Jeder Konzept-.md und resume.json werden mit dem Fortschritt in Echtzeit aktualisiert; nur wenn die Abnahme des aktuellen Gleises erfolgt, werden status: abgeschlossen + track geschrieben. Nach der Triage und Festlegung des Gleises wird zum ersten Mal gespeichert: Bei Standard-/Tiefengleis wird die Platzhalter-Notiz von zu lernen in lernend geändert, und track: Standardgleis/Tiefengleis wird hinzugefügt; bei Schnellgleis, wenn es in derselben Runde abgeschlossen wird, direkt abgeschlossen + track: Schnellgleis. Wenn M1 oder M2 eines Standard-/Tiefengleises endet, der Zeitrahmen abläuft oder eine Unterbrechung erfolgt, muss resume.json geschrieben/aktualisiert werden, nicht nur bei „Unterbrechung“. Nach Ende von M2 und wenn der Benutzer nicht explizit pausiert → in derselben Runde zu M3 (Dreifache Verifikation + Visuelle Abnahme + Speicher-Gate) übergehen, kein „Nächstes Konzept lernen“ CTA geben. Schnellgleis kann nach Abschluss direkt beendet werden; bei Standard-/Tiefengleis, sobald M3 erreicht ist, muss ohne explizite Pause des Benutzers mit der dreifachen Verifikation und dem Speicher-Gate fortgefahren werden, verboten, den Abschluss mit „Kleiner Kreislauf ist bereits erklärt“ vorzeitig zu beenden. Unterbrechung/Zeitrahmen Ende → status: lernend schreiben, beim nächsten Mal von resume.json fortsetzen.

Fragmentierte Ausführungsvereinbarung (geeignet für 5–15 Minuten kurze Zeitfenster + einfache Unterbrechung/Fortsetzung)

Grundlage: Microlearning-Übersichtsarbeiten + verteiltes Üben / Spacing-Effekt (Cepeda 2006) + Wiederherstellungskosten nach Aufgabenunterbrechung (Memory-for-Goals / Resumption Lag). In kurzen Zeitfenstern sind die fünf Schritte nicht immer durchführbar – wichtig ist nicht „wie viele Schritte“, sondern die Wiederherstellungskosten bei jedem Neustart.

  • Mikroeinheiten geschnitten (jede Einheit ≤ ein kurzes Zeitfenster):
    • Schnellgleis: Gesamtes Gleis ist eine Mikroeinheit (5–10 Minuten), nicht aufgeteilt.
    • Standardgleis: In 3 Teile geschnitten – M1: Zündung (Schritt 0 Ziel setzen + Schritt 0,5 Frage/Entwurf) → M2: Modell + Erklären (Schritt 1 Visuelles Modell + Schritt 2–3 Erklären/Stocken) → M3: Verifikation + Speicherung (Schritt 4–6).
    • Tiefengleis: Zusätzlich zu M1/M2/M3 extra M4: Am nächsten Tag wiederholen – das „am nächsten Tag wiederholen“ fällt genau auf den Spacing-Punkt (zwei Fliegen mit einer Klappe).
  • Breakpoint-Resumption-Protokoll (behebt „Wiederherstellungskosten“): Am Ende jeder Mikroeinheit oder bei Unterbrechung die Fortsetzungskarte in 〔Rootverzeichnis〕/_system/resume.json schreiben/aktualisieren:
    {"concept":"Token","track":"Standardgleis","stage":"M2: Visuelles Modell bestätigt, hänge an 'Warum BPE häufige Paare zusammenführen?'",
     "open_question":"Was ist die Stoppbedingung für die BPE-Zusammenführung?","next_action":"Gehe zurück zu Schritt 3 für Mikro-Eingabe zur 'Stoppbedingung'","ts":"2026-06-19T21:30"}
    
    Beim nächsten Auslösen von gewu ist der erste Satz nicht „Was lernen?“, sondern zuerst resume.json lesen, um den Breakpoint aufzuwecken: „Letztes Mal bist du bei Token an der Stoppbedingung der BPE-Zusammenführung hängen geblieben. In 3 Minuten weitermachen?“ – die Wiederherstellungskosten werden von „der Benutzer muss sich selbst erinnern“ auf „die KI weckt ihn mit einem Satz“ gedrückt. Nach Status abgeschlossen für das Konzept wird die Fortsetzungskarte gelöscht.
    • Große Unterbrechungen erfordern eine „große Aufweck“-Aktion (behebt „Wo bin ich in der gesamten Domäne?“): Neben dem Fortsetzen des einzelnen Konzept-Breakpoints gleichzeitig _system/roadmap_data.json dieser Großkategorie lesen (learned/total/current/next3), um einen Satz mit der Domänenfortschrittsübersicht zu geben. Zusammenführung für die Aufweck-Aktion, z. B. „Willkommen zurück 👋 Letztes Mal bist du bei Token an der Stoppbedingung der BPE-Zusammenführung hängen geblieben. Große Lage: In dieser Domäne hast du 5/9 abgeschlossen, aktuell bist du bei Context, die nächste empfohlene Station ist Agent. Möchtest du ① den Breakpoint fortsetzen oder ② die große Roadmap anzeigen?“ Bei großen Unterbrechungen über Wochen/mehrere Sitzungen hinweg besonders wichtig, nicht nur einen Punkt fortzusetzen – Resume speichert nur den Breakpoint eines Konzepts, die große Lage muss über roadmap_data ergänzt werden, sonst kommt der Benutzer zurück und weiß nicht, wo er steht.

Schritt 0 · Ziel setzen & Positionieren

  1. Frage den Benutzer: Welches Konzept soll gelernt werden? Welcher Großkategorie (z. B. AI) gehört es an? Wenn die Kategorie nicht existiert, neuen Unterordner erstellen.
  2. In einem Satz fragen: „Was ist dein aktuelles Verständnis davon?“ – als Start-Kenntnisstand notieren (für den Vergleich des Lernfortschritts am Ende).
  3. Vorhandene Konzepte in derselben Großkategorie scannen, anzeigen, welche möglicherweise relevant sind (als Grundlage für Querverweise).

Schritt 0 Anhang · Triage & Gleisfestlegung

Entscheiden, welches Gleis dieses Konzept durchläuft, um Redundanz zu vermeiden, wenn einfache Konzepte die vollen fünf Schritte durchlaufen würden. ⚠ Rein interne Entscheidung, niemals dem Benutzer zeigen: Die Triage-Fragen, Bewertungen, Summe, Ergebnis – diese Argumentation nicht in den Dialog ausgeben – die KI berechnet es selbst und führt den entsprechenden Prozess aus, der Benutzer merkt nichts.

Grundlage: Element-Interaktions-Intensität / Redundanz-Effekt / Expertise-Reversal-Effekt der Cognitive Load Theory – für „dünne“ Konzepte mit niedriger Element-Interaktions-Intensität die vollen fünf Schritte zu erzwingen, macht die meisten Schritte zu extrinsischer Last. Deshalb nach Konzepttyp gleisen, nicht alle Konzepte ohne Unterscheidung durch die vollen fünf Schritte jagen.

Triage-Drei-Fragen (jede bewertet, Summe ergibt Gleis; mit echten Konzepten kalibriert, siehe unten „Bewertungspunkte“):

  1. Anzahl der Komponenten: Um seinen Mechanismus/das Warum zu erklären (nicht eine Ein-Satz-Definition), wie viele voneinander abhängige Elemente müssen gleichzeitig betrachtet werden? ≤1 → 0; 2–3 → 1; ≥4 oder rekursiv → 2.
  2. Kopplungsgrad: Wie viele seiner direkten Vorkenntnisse sind noch nicht abgeschlossen? 0–1 → 0; ≥2 → 1.
  3. Transformations-/Nabencharakter: Sein Verständnis überschreibt kontraintuitiv das bestehende Verständnis der Domäne (threshold concept) → 2; oder es ist eine Integrations-Nabe (≥3 Konzepte hängen davon ab / laufen dort zusammen, das Tiefengleis „Konzeptintegration“ wurde genau dafür entwickelt) → 1; sonst → 0.

Gleisfestlegung: Summe 0–1 → Schnellgleis; 2–3 → Standardgleis; ≥4 oder Frage 3 ergibt 2 → Tiefengleis. Grenzwert konservativ: bei Unsicherheit ein Gleis höher einstufen (die andere Seite des Expertise-Reversal-Effekts ist, dass Anfänger ohne Gerüst schlechter dastehen).

Bewertungspunkte (kalibriert, unbedingt befolgen, sonst systematische Fehlentscheidungen):

  • Frage 1 nach „Mechanismus“ bewerten, nicht nach „Ein-Satz-Definition“: Viele Konzepte haben eine Definition (sieht aus wie Schnellgleis), aber um ihr „Warum“ zu erklären, sind mehrere Abwägungen nötig (z. B. bei Token: Subwort-Tokenisierung muss gleichzeitig „Wortschatz → OOV / Einzelzeichen-Sequenz zu lang / Subwort-Kompromiss / Worthäufigkeit“ abwägen = 4 Elemente). Dies zu übersehen, stuft wahre Konzepte fälschlich in das Schnellgleis ein.
  • Schnellgleis ist ein seltenes Druckventil für echte atomare Fakten, nicht der Normalfall: In einem systematischen Bereich sind Konzepte meist „echte Konzepte“, Schnellgleis wird selten ausgelöst. Die wahren Objekte für Schnellgleis sind oft Sub-Fakten, die nach § „Untere Granularitätsgrenze“ in die übergeordnete Notiz gefaltet wurden (z. B. „1 Token ≈ 4 Zeichen“, „MCP = Abkürzung für Model Context Protocol“) – die sollten gar nicht als eigenständige Konzepte existieren.

Verwandte Skills