Note
Aktuelles Release:
- v0.7.8: Verified Linux LTX 2.3 I2V Workflow API.
- v0.7.7: Cross-Platform LoRA path fix. 🧞♀️
Dieses Update behebt Pfad-Probleme bei LoRA-Adaptern auf Linux-Servern durch die Umstellung auf plattformübergreifende Vorwärtsslashs.
Trinity ist eine KI-gestützte Vorlesungsassistentin für macOS (Apple Silicon). Sie hört passiv zu, erkennt ihr Trigger-Wort, antwortet per Stimme und kann Infografiken, Webrecherchen, Timer, Karten und Simulationen direkt im UI anzeigen.
Als Dozent steht man oft vor der Herausforderung, den Fluss der Vorlesung beizubehalten und gleichzeitig spontane Informationen bereitzustellen. Trinity wurde entwickelt, um genau diese Lücke zu schließen:
- Der Assistent an deiner Seite: Stell dir vor, du könntest mitten in einer Übung einfach sagen: "Trinity, setze einen Timer für 10 Minuten", ohne dein Tablet oder Laptop zu berühren.
- Wissen on the fly: Du möchtest einen neuen Blickwinkel auf eine Definition hören oder eine komplexe Metapher visualisieren? Trinity generiert (dank fal.ai) in Sekunden ein passendes Schaubild oder Skizze.
- Heartbeat-Souffleur (Audio-Routing): Trinity fungiert als dein privater Souffleur auf dem AirPods. Hörst du eine Erklärung, die das Plenum (die Klasse) hören sollte, reicht ein "Trinity, wiederhole das für alle", und sie wechselt automatisch die Audioausgabe auf die externen Lautsprecher.
- Proaktiver Begleiter (Telegram-DM): Trinity analysiert deine Vorlesung live im Hintergrund. Fällt ihr ein logischer Fehler auf, zeigt sie im UI eine rote "Bubble". Arbeitest du im Vollbildmodus am Beamer? Kein Problem, die Telegram-Bridge sendet dir Trinitys Anmerkungen lautlos als Direktnachricht aufs Smartphone.
- Deep Memory (RAG Automation): Am Ende einer Vorlesung generiert Trinity ein Summary. Damit das Wissen nicht verloren geht, fügt sie diese Zusammenfassungen ab sofort automatisch in ihr Langzeitgedächtnis (RAG-Index) ein. So weiß sie nächste Woche noch genau, worüber gesprochen wurde.
- Natürliche Interaktion: Trinity hört aktiv zu und erkennt ihr Wake-Word egal ob am Anfang ("Trinity, was ist...") oder am Ende ("... findest du nicht auch, Trinity?") des Satzes. Sie nutzt den vollen Kontext davor und danach.
- Fenster-Management: Alle eingeblendeten Fenster sind frei verschiebbar und können per Mausklick geschlossen werden – ideal für Multi-Monitor-Setups im Hörsaal.
Trinity ist mehr als ein Chatbot; sie ist das Interface zwischen deinem Wissen (RAG), dem World Wide Web und der visuellen Vermittlung im Hörsaal.
Trinitys Logik wurde vollständig in unabhängige Agent-Skills ausgelagert. Hier die Mega-Features im Überblick:
| Skill | Befehl / Trigger | Aktion |
|---|---|---|
| Freie Konversation | „Trinity, [Frage]" | Max. 1-2 Sätze Antwort (siehe Soul.md). Für mehr Infos: „Erkläre ausführlich…" |
| RAG-Agent | „Trinity, schlag im Skript nach …" | RAG-Suche in den eigenen Vorlesungs-PDFs und automatischen Session-Summaries. |
| WebSearch-Agent | „Trinity, recherchiere …" | Live Web-Suche via Tavily. |
| Image-Agent | „Trinity, erstelle ein Schaubild …" | Bildgenerierung (einfache Infografiken) via fal.ai. |
| Maps-Agent | „Trinity, zeig mir eine Karte von …" | Google Maps im UI. |
| Timer-Agent | „Trinity, starte einen Timer für X Minuten" | Countdown im UI. |
| Stock-Agent | „Trinity, wie steht der Aktienkurs von Apple?" | Live-Kurs und SVG-Chart im UI. |
| Simulation-Agent | „Trinity, zeig Conway's Game of Life" | Startet interaktive, responsive Simulationen (Bienen, Piraten vs. Fischer, etc.). |
| Summary-Agent | „Trinity, Session beenden und zusammenfassen" | Sitzungs-Zusammenfassung erstellen und automatisch ins Deep Memory indexieren. |
| PowerPoint-Agent | „Trinity, nächste Folie" | Steuert PowerPoint nativ via AppleScript. |
| Souffleur-Skill | „Trinity, wiederhole das für das Plenum" | Dynamisches Audio-Routing auf externe Lautsprecher für die Studierenden. |
| Heartbeat (Proaktiv) | Hintergrundprozess (alle 2 Min) | Analysiert Sitzungs-Transkripte auf Fehler und sendet Warnungen via UI-Bubbles oder Telegram-Bridge. |
| Focus-Agent | „Trinity, hör kurz weg" / „Weiter geht's" | Stummschalten & Reaktivieren. |
| Chat Mode-Agent | „Trinity, lass uns quatschen" | Wechselt in den natürlichen Konversationsmodus ohne explizites Trigger-Wort. |
| ComfyUI-Agent | „Trinity, flux render …" / „… schreib einen Song" | Generiert lokal Bilder, Musik oder Videos (via LTX/AceStep) und zeigt/spielt sie ab. |
| Settings-Agent | „Trinity, öffne Einstellungen" | Öffnet das Konfigurations-UI auf dem Desktop. |
| Komponente | Technologie |
|---|---|
| STT (Sprache → Text) | faster-whisper · Modell: small · int8, CPU |
| LLM | Qwen3.6 35B A3B via LM Studio (lokal) oder OpenRouter (Fallback) |
| TTS (Text → Stimme) | macOS say (Stimme: Samantha) |
| UI | PySide6 / QWebEngineView mit Glasmorphismus |
| RAG | sentence-transformers paraphrase-multilingual-MiniLM-L12-v2 |
| Bildgenerierung | fal.ai nano-banana-2 (Cloud) oder ComfyUI Flux.1/2 (Lokal) |
| Musikgenerierung | ComfyUI AceStep 1.5 (Lokal) |
| Videogenerierung | ComfyUI LTX 2.3 (Lokal) |
| Web-Recherche | Tavily API |
Trinity_Assistant/
├── trinity_launcher.py ← System starten
├── trinity_app.py ← UI (Avatar + Content-Fenster)
├── trinity-blueprint.md ← Architektur-Konzept
├── README.md
├── core/
│ ├── brain.py ← KI-Logik, Agentic Router, RAG, Tools
│ ├── transcriber.py ← STT-Loop (faster-whisper, VAD, Trigger)
│ ├── Soul.md ← Persona & Systemrolle von Trinity
│ ├── User.md ← Kontext über den Nutzer (Mathias)
│ ├── config.json ← Alle Einstellungen (LLM, STT, TTS, APIs)
│ ├── state.txt ← IPC-Status (idle/listening/thinking/speaking)
│ └── payload.html ← Aktives UI-Widget (wird zur Laufzeit befüllt)
├── RAG/ ← PDF-Skripte hier ablegen → auto-indexiert
│ ├── index/ ← Vorberechneter Embedding-Index
│ └── build_index.py ← Index manuell neu bauen
├── gen_images/ ← Generierte Schaubilder (PNG)
└── memory/ ← Sitzungs-Transkripte (Markdown)
Keine Sorge, wenn du kein Technik-Profi bist. Diese Anleitung führt dich durch alles, was du brauchst.
Trinity läuft lokal auf deinem Mac. Du brauchst drei Dinge:
| Was | Wozu | Pflicht? |
|---|---|---|
| Ein KI-Sprachmodell (LLM) | Trinitys „Gehirn" – sie denkt damit | ✅ Ja |
| Tavily API-Key | Damit Trinity live im Internet suchen kann | ⬜ Optional |
| fal.ai API-Key | Damit Trinity Schaubilder erzeugen kann | ⬜ Optional |
Trinity braucht ein „Gehirn" – ein sogenanntes Large Language Model (LLM). Das ist die KI, die deine Fragen versteht und antwortet. Du hast zwei Wege:
OpenRouter ist ein Online-Dienst, der dir Zugang zu leistungsstarken KI-Modellen gibt, ohne dass du etwas lokal installieren musst. Du zahlst nur für das, was du nutzt (oft wenige Cent pro Stunde Vorlesung).
- Gehe auf openrouter.ai und erstelle ein kostenloses Konto.
- Klicke oben rechts auf deinen Namen → „API Keys" → „Create Key".
- Kopiere den Key (sieht aus wie
sk-or-v1-abc123...). Du brauchst ihn gleich. - Welches Modell? Wir empfehlen für den Einstieg:
deepseek/deepseek-chat-v3-0324– sehr günstig, schnell, sehr gut auf Deutschgoogle/gemini-flash-1.5– ebenfalls günstig und schnellanthropic/claude-3.5-haiku– etwas teurer, aber sehr präzise
💡 Was kostet das? Eine 90-minütige Vorlesung mit
deepseek-chatkostet ca. 1–5 Cent.
Wenn du kein Geld ausgeben willst und einen leistungsstarken Mac (M2/M3/M4 mit ≥ 16 GB) hast, kannst du ein KI-Modell komplett lokal betreiben. Dein Gespräch verlässt dann deinen Computer nie.
Option B1: LM Studio (Empfohlen für Einsteiger)
- Lade LM Studio herunter und installiere es.
- Suche im Suchfeld nach
Qwen3und lade das ModellQwen3-8B(ca. 5 GB) herunter. - Starte das Modell und klicke auf „Local Server" → „Start Server".
- Die lokale URL lautet:
http://localhost:1234/v1/chat/completions
Option B2: Ollama (für Technik-Affinere)
brew install ollama
ollama pull qwen3:8b
ollama serve
⚠️ Wichtig: Bei weniger als 16 GB RAM läuft ein lokales Modell sehr langsam. In diesem Fall ist Weg A (OpenRouter) die deutlich bessere Wahl.
Diese Keys sind nicht nötig zum Starten, erweitern aber Trinitys Fähigkeiten erheblich.
Damit Trinity live Fakten recherchieren kann (z.B. „Trinity, such die aktuellen KI-News").
- Gehe auf tavily.com → "Get API Key" (kostenloser Plan verfügbar).
- Kopiere deinen Key (sieht aus wie
tvly-abc123...).
Damit Trinity auf Zuruf Infografiken und Visualisierungen erzeugen kann.
- Gehe auf fal.ai → Registrieren → Dashboard → API Keys → "Add key".
- Kopiere deinen Key (sieht aus wie
fal-key-abc123...).
Damit Trinity dir bei Full-Screen-Präsentationen lautlos Warnungen und Ratschläge via Heartbeat-Souffleur aufs Handy pushen kann.
- Öffne die Telegram-App und suche nach
@BotFather(dem offiziellen Bot mit blauem Haken). - Schreibe ihm
/newbotund folge den Anweisungen. Gib deinem Bot einen Namen (z.B. Trinity_DeinName_Bot). - BotFather gibt dir am Ende einen Bot-Token (sieht etwa so aus:
123456789:ABCdefGHIjkl...). Kopiere diesen für die Trinity-Einstellungen. - WICHTIG: Suche deinen neuen Bot jetzt selbst in Telegram und klicke auf Starten (oder schreibe
/start), damit er dir Nachrichten schicken darf. - Um deine persönliche Chat-ID zu bekommen, suche in Telegram nach
@userinfobotund starte ihn. Er antwortet dir direkt mit deiner ID (z.B.123456789). Trage auch diese in die Trinity-Einstellungen ein.
Was ist eine „Sandbox" (venv)?
Das Installationsskript erstellt eine sogenannte virtuelle Umgebung (englisch: virtual environment oder kurz venv). Das ist wie ein abgeschlossener Container auf deinem Computer. Alle Python-Pakete für Trinity werden nur dort installiert – sie verändern nichts an deinem restlichen System und können jederzeit durch einfaches Löschen des Ordners rückstandslos entfernt werden. Dein Mac bleibt sauber.
Öffne das Terminal (Spotlight: ⌘ + Leertaste → "Terminal" eingeben) und führe diesen Befehl aus:
curl -sSL https://raw.githubusercontent.com/ProfEngel/TrinityLectureAssisitant/main/install_mac.sh | bashDas Skript macht automatisch folgendes:
- ✅ Lädt Trinity herunter
- ✅ Erstellt die isolierte Sandbox (venv) in
~/Trinity_Assistant/ - ✅ Installiert alle nötigen Pakete darin (dauert ca. 2–5 Minuten)
- ✅ Legt eine Datei
Starte_Trinity.commandauf deinem Desktop ab
Nach der Installation: Doppelklick auf Starte_Trinity.command – Trinity startet. ✅
📁 Wo ist Trinity installiert?
Trinity liegt nach der Installation in deinem Benutzerordner unter:
/Users/DEINNAME/Trinity_Assistant/
(oder kurz:~/Trinity_Assistant/)Die wichtigsten Unterordner auf einen Blick:
Ordner / Datei Inhalt core/config.jsonDeine API-Keys & LLM-Einstellungen core/Soul.mdTrinitys Persönlichkeit (anpassbar) core/User.mdDein Nutzerprofil (anpassbar) RAG/Hier PDFs ablegen für die Wissensbasis memory/Transkripte & Session-Zusammenfassungen gen_images/Alle von Trinity erzeugten Schaubilder agents/Die einzelnen Skills (erweiterbar)
Beim ersten Start siehst du das Trinity-Avatar-Icon auf deinem Bildschirm. Sage:
„Trinity, öffne Einstellungen"
Ein Fenster öffnet sich. Trage dort ein:
- Dein LLM (OpenRouter URL + Key, oder lokale LM-Studio-URL)
- Optional: Tavily Key für Web-Suche
- Optional: fal.ai Key für Bildgenerierung
Speichern – fertig! 🎉
# Python 3.11 empfohlen
pip install faster-whisper sounddevice numpy requests PySide6 \
sentence-transformers pyobjc-framework-Speech \
pyobjc-framework-AVFoundation
# Starten
python3 trinity_launcher.pyImportant
Das Update-Skript bewahrt automatisch alle deine persönlichen Einstellungen. Du verlierst keine API-Keys, Persona-Dateien oder Transkripte.
Wenn eine neue Version von Trinity erscheint, reicht es, denselben Installationsbefehl wie bei der Erstinstallation erneut auszuführen:
curl -sSL https://raw.githubusercontent.com/ProfEngel/TrinityLectureAssisitant/main/install_mac.sh | bashDas Skript erkennt automatisch, dass Trinity bereits installiert ist, und geht in den Update-Modus. Es passiert folgendes:
-
Sichern: Alle deine Dateien werden kurz in ein temporäres Backup kopiert:
- ✅
core/config.json– deine API-Keys & LLM-Einstellungen - ✅
core/Soul.md– Trinitys Persönlichkeit (deine Anpassungen) - ✅
core/User.md– dein Nutzerprofil - ✅
memory/– alle bisherigen Sitzungs-Transkripte - ✅
RAG/– deine hochgeladene Wissensbasis (PDFs & Index) - ✅
gen_images/– alle erzeugten Schaubilder
- ✅
-
Aktualisieren: Die neue Trinity-Version wird heruntergeladen.
-
Wiederherstellen: Alle gesicherten Dateien kommen automatisch zurück an ihren Platz.
-
Fertig: Das temporäre Backup wird gelöscht. Nichts wurde dauerhaft verändert.
💡 Tipp: Du musst nach einem Update nichts neu einrichten. Trinity startet direkt mit deinen bisherigen Einstellungen.
Trinitys Logik wurde vollständig in 11 unabhängige Agent-Skills (agents/) ausgelagert. Hier die wichtigsten Funktionen:
| Skill | Befehl / Trigger | Aktion |
|---|---|---|
| Freie Konversation | „Trinity, [Frage]" | Max. 1-2 Sätze Antwort (siehe Soul.md). Für mehr Infos: „Erkläre ausführlich…" |
| RAG-Agent | „Trinity, schlag im Skript nach …" | RAG-Suche in den eigenen Vorlesungs-PDFs. |
| WebSearch-Agent | „Trinity, recherchiere …" | Live Web-Suche via Tavily. |
| Image-Agent | „Trinity, erstelle ein Schaubild …" | Bildgenerierung (einfache Infografiken) via fal.ai. |
| Maps-Agent | „Trinity, zeig mir eine Karte von …" | Google Maps im UI. |
| Timer-Agent | „Trinity, starte einen Timer für X Minuten" | Countdown im UI. |
| Stock-Agent | „Trinity, wie steht der Aktienkurs von Apple?" | Live-Kurs und SVG-Chart im UI. |
| Simulation-Agent | „Trinity, zeig Conway's Game of Life" | Startet interaktive, responsive Simulationen (Bienen, Piraten vs. Fischer, etc.). |
| Summary-Agent | „Trinity, Big Picture" | Sitzungs-Zusammenfassung erstellen. |
| PowerPoint-Agent | „Trinity, nächste Folie" | Steuert PowerPoint nativ via AppleScript. |
| Focus-Agent | „Trinity, hör kurz weg" / „Weiter geht's" | Stummschalten & Reaktivieren. |
| Review-Agent | „Trinity, Zusammenfassung der letzten Vorlesung" | Liest das letzte Summary vor. |
| Chat Mode-Agent | „Trinity, lass uns quatschen" | Wechselt in den natürlichen Konversationsmodus. |
| Souffleur-Skill | „Trinity, wiederhole das für das Plenum" | Dynamisches Audio-Routing auf externe Lautsprecher für die Studierenden. |
| Heartbeat (Proaktiv) | Hintergrundprozess (alle 2 Min) | Analysiert Sitzungs-Transkripte auf Fehler und zeigt Ampel-Bubbles im UI. |
| Settings-Agent | „Trinity, öffne Einstellungen" | Öffnet das Konfigurations-UI auf dem Desktop. |
Trinity ist vollständig DSGVO-konform im Hörsaal-Einsatz konzipiert.
Da die Spracheingabe exklusiv über ein einzelnes Apple AirPod erfolgt, ist der Aufnahmeradius des Mikrofons auf ca. 20 cm um den Dozenten beschränkt. Es werden keine Stimmen, Zwischenrufe oder Fragen der Studierenden im Saal aufgezeichnet. Alle lokalen Mitschnitte und Transkripte (memory/) enthalten somit ausschließlich die Stimme des Dozenten.
Trinity ist hochgradig anpassbar:
- API Keys & LLM (
core/config.json): Trage hier deine Keys (OpenRouter, Fal.ai) und Modelle ein. Noch einfacher geht es über das UI:python3 projects/Trinity_Assistant/core/settings_ui.py. - Persönlichkeit (
core/Soul.md): Bestimmt Trinitys Verhalten. Hier ist fest verankert, dass sie nur extrem kurz antwortet (max. 1-2 Sätze), es sei denn, du forderst explizit eine längere Antwort an.
STT-Modell wechseln (in config.json):
tiny→ ~0.3s, schwächstes Deutschsmall→ ~0.8s, gut ✅ (Standard)medium→ ~2s, besser für Akzente
| Hebel | Einstellung | Effekt |
|---|---|---|
max_tokens in brain.py |
250 (Standard) | Kürzer → schneller |
chunk_duration in config.json |
6s | Kleiner = reaktiver, aber mehr False-Triggers |
silence_threshold |
0.015 | Mikrofon-abhängig, ggf. anpassen |
LLM thinking |
aus | Kein /think-Modus bei Qwen3 |
Einfach PDF in RAG/ legen → beim nächsten Start wird der Index automatisch neu gebaut.
Manuell neu bauen:
python3 projects/Trinity_Assistant/RAG/build_index.pyTrinity wird stetig weiterentwickelt. Die nächsten Meilensteine umfassen:
- Heartbeat-System: Kontinuierliche Analyse des Vorlesungsverlaufs (alle 2 Min.) auf Fehler oder alternative Perspektiven.
- UI-Bubbles: Interaktive Benachrichtigungs-Bubbles (Gelb/Rot/Grün) über dem Avatar für lautlose Hinweise.
- System-Control: Sprachsteuerung für Bildschirm-Setups (Mirror/Extended Mode) und Fenster-Management.
- Telegram-Bridge: Direkte Verbindung zum Smartphone für proaktive Impulse bei Single-Monitor-Setups.
- Dreaming-Funktion: Hintergrund-Verarbeitung und "Reflektion" über vergangene Sessions zur Vorbereitung neuer Inhalte.
- Deep Memory: Automatisierte RAG-Integration aller Session-Summaries für ein perfektes Langzeitgedächtnis.
- Accent-Correction: Intelligente Bereinigung von Transkriptionsfehlern (verursacht durch Dialekte/Akzente) während der Ruhephasen.
- Native App: Standalone macOS App & iPad-Begleit-App für den Hörsaal.
Details zu den aktuellen Entwicklungsaufgaben findest du in der ToDo.md.
Entwickelt von Mathias Engel, Zoe Engel und Eve · Trinity ist bereit. 🧞♀️
Dieses Projekt steht unter der Apache License 2.0.
Nutzungsrechte:
- ✅ Private Nutzung: Komplett kostenlos
- ✅ Bildungseinrichtungen: Kostenlos für Forschung und Lehre
- ✅ Kommerzielle Nutzung: Kostenlos
Bei kommerziellem Einsatz bitten wir freundlich darum, über den GitHub Sponsor-Link den erbrachten Mehrwert zu würdigen!
Die vollständigen Lizenzbedingungen befinden sich in der LICENSE-Datei.
Trinity wäre ohne diese exzellenten Open-Source-Projekte nicht möglich:
Core-Frameworks:
- faster-whisper – Schnelle, effiziente Spracherkennung (STT)
- LM Studio / Ollama – Flexible lokale LLM-Infrastruktur
- PySide6 – Leistungsstarkes, natives macOS-UI
- sentence-transformers – Hochwertige Embeddings für das RAG-System
- fal.ai – Blitzschnelle KI-Bildgenerierung
- Tavily – Zuverlässige Echtzeit-Web-Recherche
Danke an die gesamte Open-Source-Community! 🎉
Wenn du Trinity in deiner Forschung verwendest, zitiere bitte wie folgt:
@software{trinity2025,
title={Trinity: KI-gestützte Vorlesungsassistentin für macOS mit modularem Agentic-Skill-System},
author={Engel, Mathias and Engel, Zoe},
year={2025},
note={Ein privates Forschungsprojekt von Mathias Engel, Zoe Engel und Eve},
url={https://github.com/ProfEngel/TrinityLectureAssisitant}
}Hast du Fragen, Anregungen oder benötigst Unterstützung?
- 🐛 Issues: GitHub Issues
- 💬 Diskussionen: GitHub Discussions
- 🎓 Akademische Zusammenarbeit: [email protected]
Erstellt von Mathias Engel & Zoe Engel 2024–2025 – Lass uns Trinity gemeinsam noch besser machen! 💪
Made with ❤️ in Stuttgart / Nürtingen, Germany
KI-gestützte Vorlesungsassistentin mit passiver Spracherkennung, modularem Agentic-Skill-System und lokaler RAG-Wissensbasis.
Prof. Dr. Mathias Engel – ProfEngel
Ein privates Projekt – entwickelt von Mathias & Zoe Engel mit und für Eve. 🧞♀️
Beiträge sind herzlich willkommen!
Wenn du Ideen, Verbesserungen oder Fehlerberichte hast, öffne gerne ein Issue oder einen Pull Request.
voice-assistant llm ai macos apple-silicon lecture-assistant rag speech-recognition tts pyside6 agentic-ai educational-ai local-llm


