Installation
PatentFlow besteht aus der Anwendung (API), einer PostgreSQL-Datenbank, der Web-App für die Kanzlei, dem Meldeformular für Mandanten und – optional – einem Sprachmodell. Ein Build-Skript installiert alles mit Docker auf einem Linux-Server; Web-App und Formular sind statische Dateien, die jeder Webserver ausliefern kann.
Ablauf
- Die Konfigurationsvorlage
.env.examplenach.envkopieren und Datenbankpasswort, Adresse der Web-App und die E-Mail-Adresse des ersten Administrators eintragen. ./build.shausführen. Das Skript baut zuerst die Images und ersetzt die laufenden Container erst, wenn das gelungen ist, startet Datenbank, API und Backup-Container und prüft, ob ein Administrator existiert.- Der Administrator vergibt über „Passwort vergessen“ ein Passwort und lädt in der Web-App die weiteren Personen ein.
- Mailserver, Adresse der Web-App, EPA-Zugangsdaten und KI-Anbieter werden in der Web-App unter Einstellungen gepflegt, nicht in der Konfigurationsdatei.
Demo-Modus
Jede Person kann die Web-App über „Demo-Modus“ in der Seitenleiste auf Beispieldaten umschalten – eine fiktive Kanzlei mit Mandanten, Akten, KI-Entwürfen, Fristen, Planung, Amtspost und Rechnungen –, um sich zurechtzufinden oder etwas auszuprobieren. Die Beispieldaten liegen in einer eigenen Datenbank; die Akten der Kanzlei bleiben unberührt. Im Demo-Modus laufen keine KI-Funktionen, es werden keine E-Mails versendet und die Einstellungen der Kanzlei lassen sich nicht ändern. Administratoren setzen die Demo mit aktuellen Daten zurück; mit DEMO_MODE=false ist sie ausgeschaltet.
Mit oder ohne KI
Die KI ist in jeder Form optional – auch ein lokales Sprachmodell ist nicht zwingend notwendig. Die Kanzlei wählt eine von drei Varianten; API, Datenbank und Web-App laufen in jeder davon eigenständig:
- Mit lokalem Modell (Standard): Das Modell läuft in einem Container auf demselben Server, direkt auf dem Host oder auf einem eigenen Server im Netz der Kanzlei – etwa einem GPU-Server für kürzere Antwortzeiten. Dafür wird er mit
./build.sh llm-servergestartet und inLLM_BASE_URLmit seiner IP-Adresse im internen Netz eingetragen; er nimmt nur Anfragen mit dem konfigurierten Schlüssel an. - Ohne lokales Modell (
LOCAL_LLM=false): Es wird kein Sprachmodell installiert. KI-Funktionen laufen nur mit den Anbietern, die Administratoren in der Web-App anbinden – etwa Claude oder ein eigener OpenAI-kompatibler Server –, und nur für Mandanten, die das Modell zulassen. Ohne ausdrückliche Wahl für die Anmeldung, den Mandanten oder als Kanzlei-Standard wird kein externes Modell verwendet. - Ganz ohne KI (
AI_ENABLED=false): leichte Edition ohne jedes Sprachmodell. Akten, Fristenbuch, Planung, Amtspost, Schreiben, Gebühren und Rechnungen funktionieren wie gewohnt, alle KI-Funktionen sind ausgeblendet.