Synthadoc: LLM-Wiki-Engine, die Wissen beim Ingest kompiliert
Synthadoc: Eine Open-Source-LLM-Wissenskompilierungs-Engine, die Rohdokumente in strukturierte, lokal ausgerichtete Wikis umwandelt. Eine transparente, für Menschen lesbare Alternative zum herkömmlichen RAG, die ohne den Einsatz von Tools selbst verwaltet und verbessert werden kann.
Auf einen Blick
- Was ist das?
- Die Python-Engine axoviq-ai/synthadoc verwandelt PDFs, Webseiten und KI-Protokolle in ein lokales Markdown-Wiki mit Zitaten, Widerspruchsmarkierung und Fünf-Zustands-Lebenszyklus, als Alternative zu klassischem RAG.
- Für wen ist es gedacht?
- Synthadoc passt für Einzelforscher und kleine Teams, die eine lesbare, prüfbare Wissensbasis in Markdown wollen und ein LLM-Budget einplanen können. Wer eine durchsuchbare Vektordatenbank mit robuster Skalierung sucht, fährt mit klassischem RAG besser.
- Darf ich es kommerziell nutzen?
- Ja, unter strengen Bedingungen. AGPL-3.0 ist eine Lizenz mit Netzwerk-Copyleft: Wenn andere eine veränderte Version über ein Netzwerk nutzen, etwa als gehosteten Dienst, müssen Sie ihnen den Quellcode unter derselben Lizenz anbieten.
- Wird es noch gepflegt?
- Ja. Die letzten Commits kamen vor 4 Tagen.
- In welcher Sprache ist es geschrieben?
- Hauptsächlich Python, laut der Sprachstatistik von GitHub.
Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 14. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.
TIEFGEHENDE OPEN-SOURCE-ANALYSE
Kompilieren statt Abrufen: der Kerngedanke hinter Synthadoc
Die meisten Wissenswerkzeuge suchen und fassen Inhalte zum Abfragezeitpunkt zusammen. Synthadoc dreht das Prinzip um: Laut README wird Wissen beim Ingest kompiliert. Jede neue Quelle bereichert das gesamte Korpus, erzeugt Querverweise und verändert bestehende Seiten, statt nur einen neuen Chunk anzuhängen. Das Wiki selbst ist das Artefakt, lesbar und editierbar ohne laufenden Prozess.
Das Projekt zitier die Vision von Andrej Karpathy, ein LLM solle ein Wiki für den Nutzer pflegen können, und versteht sich als offene, selbst verwaltbare Antwort auf diesen Gedanken. Die Engine liest rohe Quelldokumente und synthetisiert daraus ein persistentes, strukturiertes Wiki. Automatisch entstehen Querverweise, Widersprüche werden erkannt und angezeigt, Verwaistseiten werden markiert, und jede Antwort trägt Quellenangaben. Auf GitHub verzeichnet das Projekt 1113 Stars und 123 Forks, die Community Edition v1.3.1 erschien am 26. August 2026.
Von PDF bis .jsonl: die Quellformate und der Markdown-Ausgang
Die Liste der akzeptierten Quellformate ist breit: PDFs, Tabellenkalkulationen, PPTs, Webseiten, Bilder, Videos, Word-Dateien, TXT-Dateien und KI-Sitzungsprotokolle im .jsonl-Format. Gerade die Session-Protokolle sind ein praktischer Punkt, weil Gespräche mit Coding- oder Chat-Agenten so direkt in die Wissensbasis einfließen können, ohne manuelles Aufbereiten.
Der Ausgang ist konsequent einfach: lokale Markdown-Dateien mit YAML-Frontmatter, automatischen Wikilinks, Inline-Zitaten und einem Seitenlebenszyklusstatus. Das README betont, dass kein Cloud-Konto und keine Anbieterbindung nötig sind, das Wiki lässt sich in jedem Editor öffnen, mit git sichern und über beliebige Cloud-Laufwerke synchronisieren. Der Open-Ausgang in Obsidian oder ein anderes wiki-kompatibles System ist also keine Konvertierungsaufgabe, sondern der normale Zustand des Artefakts. Wer das Wiki verlassen will, nimmt die Dateien und geht.
pip install synthadoc und die Demo history-of-computing
Die Installation ist kurz gehalten: Für die Produktionsinstallation wird Python 3.11 oder neuer verlangt, danach folgen pip install synthadoc und synthadoc --version. Weder Node.js, Git noch Build-Schritte seien nötig. Es wird mindestens ein LLM-API-Schlüssel benötigt, außer man nutzt Claude Code oder Opencode als Anbieter; standardmäßig arbeitet die Engine mit Gemini Flash über dessen kostenlose Stufe.
Der schnellste Einstieg ist die Demo History of Computing, installiert mit synthadoc install history-of-computing --target ~/wikis --demo und gestartet mit synthadoc serve -w history-of-computing. Der Server bindet an http://127.0.0.1:7070 und bleibt rein lokal erreichbar. Laut README brauchen die 13 vorgebauten Seiten dieser Demo keinen LLM-API-Schlüssel zum Durchsuchen, was einen risikofreien ersten Blick erlaubt, bevor irgendeine eigene Quelle oder ein kostenpflichtiger Aufruf ins Spiel kommt. Für ein neues Wiki erzeugt synthadoc install mit einer --domain-Beschreibung Startdateien wie index.md, purpose.md, AGENTS.md, CLAUDE.md und GEMINI.md.
Lebenszyklus mit status: contradicted und Zitaten im Schema file:L-L
Jede Wiki-Seite durchläuft fünf Zustände: Entwurf, aktiv, widersprüchlich, veraltet, archiviert. Lint-Läufe können Seiten automatisch überführen, jede Überführung landet in einem unveränderlichen Ereignisprotokoll. Beim Ingest erkannte Widersprüche markieren Seiten mit status: contradicted, sodass entweder eine automatische Auflösung oder eine menschliche Prüfung folgt. Ein adversarischer zweiter LLM-Durchlauf meldet übertriebene Behauptungen, ungestützte Superlative und strittige Fakten pro Seite.
Die Zitiermechanik ist konkret: Jede Behauptung trägt ein Zitat der Form ^[file:L-L], das auf Quellzeilen verweist, und ein Lint für defekte Zitate validiert diese Verweise. Der Schutz von Freigaben ist ein wichtiges Detail: Seiten im Status active sind geschützt, widersprechende Quellen werden zur Prüfung markiert, statt menschlich geprüften Inhalt zu überschreiben. Das unterscheidet die Engine von Werkzeugen, die bei jeder neuen Quelle still den alten Stand überschreiben, und macht die Wissensbasis zu einem prüfbaren, entwicklungsfähigen Bestand.
AquaFlow-Beispiel, candidates-Ordner und ROUTING.md für Abfragen
Für ein End-to-End-Bild liefert das Repository eine Beispielverfolgung namens AquaFlow Capital, eine Due-Diligence-Simulation über docs/example/aquaflow/README.md. Beim Ausbau eines Wikis regeneriert der Befehl scaffold den Index und die Agenten-Richtliniendateien, ohne verlinkte Seiten anzufassen. Web-Such-Ingest fächert eine Anfrage wie synthadoc ingest "search for: Bank of Canada interest rate decisions 2024" in parallele URL-Jobs auf, von denen jeder ein eigener Ingest-Job wird.
Niedrige Konfidenz wird sichtbar gehandhabt: Seiten unterhalb einer Konfidenzschwelle landen in einem candidates-Ordner und warten dort auf Prüfung. Lint führt strukturelle Prüfungen mit optionalem adversarischem Durchlauf durch, Routing erzeugt eine ROUTING.md, die Abfragen auf relevante Zweige beschränkt. Für wiederkehrende Arbeit sind geplante Jobs für Ingest, Lint, Scaffold und Routing-Bereinigung dokumentiert, zudem existiert ein Hook-System für CI/CD-Anbindung und OpenTelemetry für Ops-Dashboards. Die drei Schichten des Caches, für Embeddings, LLM-Aufrufe und Provider-Prompts, senken laut README die Kosten wiederholter Lint-Läufe auf unveränderten Seiten auf fast null Tokens.
Vier Zugänge: Obsidian-Plugin, Web-UI, CLI und der MCP-Server
Das Wiki ist über vier Schnittstellen bedienbar. Das Obsidian-Plugin bringt ein Ingest-Modal, Streaming-Abfragen, Lint-Berichte, Lebenszyklus-Steuerung, Herkunftsanzeige und ein Wissensgraph-Panel mit, dazu eine Hintergrundüberwachung des Vaults, die beim Speichern von Dateien Schnappschüsse erstellt. Die Web-Chat-Oberfläche läuft mit synthadoc web und bietet Streaming-Antworten, Sitzungsverlauf, Hinweise auf Wissenslücken und einen Graph-Tab. Der CLI-Pfad deckt Install, Ingest, Lint und Routing ab.
Für Agenten-Umgebungen stellt ein MCP-Server 12 Tools bereit, adressiert an Claude Desktop, Claude Code, n8n und LangGraph. Kontextpakete bündeln zitierte Wiki-Auszüge innerhalb eines Token-Budgets für externe Prompts. Exportformate umfassen llms.txt, llms-full.txt, GraphML, JSON mit Herkunft und Lebenszyklus sowie ein OKF-v0.1-Bundle. Die README sagt, all dies sei integriert und erfordere keine Zusatzmodule; für Teams, die über die Agent-Orchestrierung aus dem Quartier hinaus wollen, sind diese Export- und MCP-Wege die praktische Brücke.
Betrieb auf localhost, Kostenprotokoll und die AGPL-3.0-Folgen
Der Betriebsansatz ist auf Lokalität ausgelegt. Laut README verlassen Quelldokumente die Maschine nie, der Server bindet nur an localhost, und pro Job werden Token- und Kostenwerte protokolliert, mit weichen Warn- und harten Gate-Schwellen sowie einer wiederaufnehmbaren Job-Warteschlange. Backup und Restore läuft als einzelnes Zip mit Port- und Domain-Umschreibung, Migration erfordert also kein erneutes Ingest. Vor jedem LLM-Aufruf entfernt ein Quellensanitizer Nullbreitenzeichen, bidirektionale Overrides, verstecktes HTML und Befehls-Override-Phrasen aus Quellen.
Die Lizenz ist AGPL-3.0, nicht MIT: Sie erlaubt Nutzung, Verbreitung und Modifikation, verpflichtet aber Betreiber von Netzwerkservern mit modifizierten Versionen, den entsprechenden Quellcode zugänglich zu machen. In Unternehmensumgebungen mit angepassten Builds ist das eine echte Rechtsfolge, die geprüft werden muss. Eine ehrliche Grenze bleibt: Die README quantifiziert keine unabhängigen Benchmarks, keine Sicherheitsgarantien und keine Produktionsleistungszahlen; die Versprechen zur Genauigkeit beruhen auf Selbstauskunft. Wer das Werkzeug ernsthaft einsetzen will, sollte nach der Demo einen eigenen Ingest mit realen Dokumenten fahren und die Zitat- und Widerspruchsberichte eines vollen Lint-Laufs gegen das eigene Material bewerten.
Redaktionelles Fazit
Synthadoc passt für Einzelforscher und kleine Teams, die eine lesbare, prüfbare Wissensbasis in Markdown wollen und ein LLM-Budget einplanen können. Wer eine durchsuchbare Vektordatenbank mit robuster Skalierung sucht, fährt mit klassischem RAG besser. Vor dem Einsatz lohnt ein Durchlauf der Demo history-of-computing ohne API-Schlüssel und ein eigener Lint-Lauf gegen eigene Quellen, um Zitatqualität und Widerspruchserkennung am realen Material zu prüfen.
Community-Notizen