Chatbot Pilot
Chatbot Pilot ist ein KI-gestützter Kundensupport-Chatbot für WordPress. Er besteht aus einem schwebenden Chat-Widget im Frontend und einem vollständigen Adminbereich unter Einstellungen → Chatbot Pilot. Das Plugin bietet zwei Betriebsarten:
- n8n-Modus — das Widget reicht jede Besuchernachricht per Webhook an einen externen n8n -Workflow weiter. Sinnvoll, wenn Sie bereits Automationen, eigene Logik oder Drittanbieter-Integrationen außerhalb von WordPress betreiben.
- Nativer RAG-Modus — das Plugin indexiert die Inhalte Ihrer Site (Beiträge, Seiten, Custom Post Types) in Chunks, speichert sie in einer lokalen SQLite-Datenbank, ruft zur Anfragezeit die relevantesten Passagen ab und erzeugt eine Antwort mit dem LLM-Anbieter Ihrer Wahl (OpenAI, Anthropic Claude, Google Gemini, DeepSeek oder eine selbst gehostete Ollama-Instanz).
Beide Modi teilen sich dasselbe Widget, dasselbe Konversations-Log und dieselben Feedback-/Export-Werkzeuge — Sie können das Backend also jederzeit wechseln, ohne die Besucher-Erfahrung zu verlieren.

Highlights
- Zwei Backends: n8n-Webhook oder vollständig natives Retrieval-Augmented Generation.
- Multi-Provider-LLM-Unterstützung: OpenAI, Anthropic Claude, Google Gemini, DeepSeek, Ollama (lokal).
- Native RAG-Engine mit SQLite-Storage, konfigurierbarer Chunk-Größe und Top-K-Retrieval.
- Hintergrund-Indexierung über WordPress-Cron, damit ein Reindex die Admin-Oberfläche nicht blockiert.
- Anpassbares Widget: Position, Primär-/Hintergrund-/Textfarben, Farben der User- und Bot-Bubbles, Abmessungen, Border-Radius, Typografie.
- Editierbare Texte für Willkommensnachricht, Untertitel, Input-Placeholder, Loading-State und Fehlermeldung.
- Konversations-Log mit Feedback pro Nachricht (Daumen hoch / Daumen runter) und CSV-Export.
- Eingebauter Health-Check, der Provider-Erreichbarkeit, Index-Status und Webhook-Erreichbarkeit prüft.
- Mehrsprachenfähig über Polyglot — Widget-Texte und Wissensdatenbank lassen sich pro Sprache ausliefern.
Voraussetzungen
Das Plugin ist im nativen RAG-Modus autark und benötigt außer der LLM-API Ihrer Wahl keine externen Dienste. Der mitgelieferte Vektorspeicher nutzt SQLite, das in jedem Standard-PHP-Build verfügbar ist.
| Komponente | Empfohlen |
|---|---|
| WordPress | 6.2 oder neuer (getestet bis 7.0) |
| PHP | 7.4 oder neuer (8.x empfohlen) |
| Datenbank | MySQL/MariaDB für WordPress-Daten, SQLite für den Vektor-Index |
| HTTPS | Erforderlich für Webhook- und Provider-Aufrufe |
| Ausgehendes Netzwerk | Erforderlich, um den gewählten LLM-Anbieter zu erreichen |
Für den n8n-Modus benötigen Sie zusätzlich eine erreichbare n8n-Instanz mit
einem Webhook-Node, der POST-Anfragen annimmt. Für Ollama brauchen Sie
einen laufenden Ollama-Server, der vom WordPress-Host aus erreichbar ist
(üblicherweise http://localhost:11434).
Installation
- Öffnen Sie im WordPress-Adminbereich Plugins → Installieren → Plugin hochladen und laden Sie die Chatbot-Pilot-ZIP-Datei hoch.
- Aktivieren Sie Chatbot Pilot.
- Öffnen Sie Einstellungen → Chatbot Pilot. Das Plugin legt seine Datenbanktabellen und Standardoptionen beim ersten Aufruf an.
- Wählen Sie den Backend-Modus (n8n oder Native RAG) und vervollständigen Sie die Provider-Konfiguration weiter unten.
- Im nativen RAG-Modus klicken Sie mindestens einmal auf Reindex, um die Wissensdatenbank zu befüllen, bevor Sie das Widget den Besuchern zugänglich machen.
- Rufen Sie eine beliebige öffentliche Seite im Frontend auf, um sicher zu sein, dass das Widget an der konfigurierten Position erscheint.
Sobald das Plugin konfiguriert ist, wird das Widget auf jeder Seite automatisch eingebunden; ein Shortcode oder Theme-Eingriff ist nicht nötig.
Konfiguration
Der Einstellungsbildschirm liegt unter Einstellungen → Chatbot Pilot und ist auf sechs Tabs aufgeteilt — Allgemein, AI / RAG, Aussehen, Icons, Texte und Feedback. Alle Werte werden pro Site gespeichert (bzw. pro Netzwerk-Site bei Multisite) und lassen sich ohne Reindex anpassen — mit Ausnahme der Indexierungs-Parameter selbst.
Allgemein

Der Tab Allgemein enthält drei Karten:
- Lizenz — Tragen Sie Ihren Schlüssel
PILOT-XXXX-XXXX-XXXX-XXXXein und klicken Sie auf Prüfen & Speichern, um automatische Plugin-Updates zu aktivieren. - Allgemein → Chatbot aktivieren — Hauptschalter, der das Widget auf der Site einblendet.
- Sichtbarkeit → Auf diesen URLs ausblenden — durch Komma oder
Zeilenumbruch getrennte Liste von Pfaden, auf denen das Widget
ausgeblendet bleiben muss (Präfix-Match:
/loginblendet auch/login/aus). - Balloon-Benachrichtigung — zeigt nach einer konfigurierbaren
Verzögerung (
Anzeigen nachin Sekunden,0= sofort) neben der Chat-Bubble einen Sprechblasen-Hinweis, um Aufmerksamkeit zu erzeugen.
Backend-Modus
Wählen Sie genau ein Backend. Die Auswahl bestimmt, welche Folgefelder sichtbar sind.
- n8n-Webhook — das Widget schickt die Besuchernachricht, die
Conversation-ID und die aktuelle Seiten-URL per POST an den von Ihnen
hinterlegten Webhook. Erwartet wird eine JSON-Antwort mit einem
reply-String, der dem Nutzer angezeigt wird. - Native RAG — die Anfrage wird im Prozess selbst beantwortet. Das Plugin holt die Top-K relevantesten Chunks aus dem lokalen Index, baut einen Prompt und ruft den konfigurierten LLM-Anbieter auf.
n8n-Einstellungen
Nur sichtbar, wenn der Backend-Modus auf n8n-Webhook steht.
- Webhook-URL — vollständige HTTPS-URL Ihres n8n-Webhook-Nodes.
- Auth-Header (optional) — Name und Wert eines Headers, der bei jeder Anfrage mitgeschickt wird — nützlich für Webhooks, die mit einem Shared Secret abgesichert sind.
- Timeout — maximale Wartezeit (in Sekunden) auf eine Antwort, bevor dem Nutzer die Fehlermeldung angezeigt wird.
KI-Anbieter (Native RAG)
Nur sichtbar, wenn der Backend-Modus auf Native RAG steht.

Wählen Sie einen Anbieter aus und füllen Sie die entsprechenden Felder:
| Anbieter | Hinweise |
|---|---|
| OpenAI | Beste Gesamtqualität mit der GPT-4-Familie. API-Key von platform.openai.com erforderlich. |
| Anthropic Claude | Starkes Reasoning und Tonalitätskontrolle. API-Key von console.anthropic.com erforderlich. |
| Google Gemini | Schnelle Antworten zu konkurrenzfähigen Preisen. Schlüssel aus Google AI Studio erforderlich. |
| DeepSeek | Budgetfreundliche Option mit starker Leistung bei technischen Inhalten. |
| Ollama | Läuft lokal. Konfigurieren Sie die Basis-URL (Standard http://localhost:11434) und den Modellnamen. Kein API-Key erforderlich. |
Jeder Anbieter zeigt dieselben drei Felder:
- API-Key (bzw. Basis-URL bei Ollama) — in der WordPress-Optionentabelle gespeichert; nie ans Frontend ausgeliefert.
- Modell — die konkrete Modell-Kennung, die aufgerufen wird (z. B.
gpt-4o-mini,claude-3-5-sonnet,gemini-1.5-flash,deepseek-chat,llama3.1:8b). - Verbindung testen — schickt einen minimalen Ping an den Anbieter und meldet Erfolg oder die wortgleich von der API zurückgegebene Fehlermeldung. Führen Sie diesen Test nach jeder Änderung von Key oder Modell aus.
Wissensdatenbank
Steuert, wie der native RAG-Index aufgebaut und abgefragt wird. Änderungen an den Chunking-Parametern werden beim nächsten Reindex wirksam.
- Quellpfad — durch Komma getrennte Liste von Beitragstypen (oder
eine Root-URL), die ingestiert werden sollen. Lassen Sie den Standard
post,pagestehen, um die gesamte Site zu indizieren, oder beschränken Sie sich auf einen speziellen Wissensdatenbank-CPT. - Chunk-Größe — Token-Anzahl jedes in den Index geschriebenen Chunks.
Standard
500. Kleinere Chunks verbessern die Retrieval-Präzision, größere Chunks erhalten mehr umgebenden Kontext. - Top-K — Anzahl der Chunks, die pro Besucherfrage abgerufen und dem
LLM als Kontext mitgegeben werden. Standard
5. - Reindex — plant über WP-Cron einen vollständigen Neuaufbau ein. Der Fortschrittsbalken zeigt eingereihte, verarbeitete und übersprungene Dokumente. Während der Job läuft, beantwortet der bestehende Index weiterhin Anfragen.
- Index leeren — entfernt jede Zeile aus der Vektortabelle. Nutzen Sie das vor einem Wechsel des Embedding-Modells.
Aussehen
Jeder visuelle Aspekt des Widgets lässt sich in diesem Tab anpassen. Die Live-Vorschau rechts aktualisiert sich sofort bei jeder Wertänderung.

Position
- Unten rechts (Standard)
- Unten links
Farben
- Primärfarbe — Header-Hintergrund, Senden-Button, Fokus-Rahmen.
- Hintergrundfarbe — Hintergrund des Chat-Fensters.
- Textfarbe — Basisfarbe des Textes im Fenster.
- Farbe Nutzernachricht — Bubble-Hintergrund des Besuchers.
- Farbe Bot-Nachricht — Bubble-Hintergrund des Assistenten.
Abmessungen
- Fensterbreite und Fensterhöhe — in Pixeln.
- Launcher-Button-Größe — Durchmesser der schwebenden Schaltfläche.
- Border-Radius — wird auf das Fenster, die Bubbles und den Launcher angewendet.
Typografie
- Schriftfamilie — erbt standardmäßig vom Theme; kann mit jedem CSS-Font-Stack überschrieben werden.
- Basis-Schriftgröße — wird auf den Chat-Body angewendet.
Icons

Der Tab Icons trennt das Branding vom Aussehen-Tab — Sie können Launcher-, Schließen- und Senden-Icon also austauschen, ohne an Farben oder Größen zu drehen. Das mitgelieferte Set deckt die gängigsten Chat-Muster ab; das Feld Custom URL akzeptiert jedes öffentlich erreichbare SVG oder PNG.
Texte

Jeder für Besucher sichtbare Text liegt auf dem Tab Texte, sodass Sie das Widget übersetzen oder umformulieren können, ohne das visuelle Theme anzufassen:
- Willkommensnachricht — erste Nachricht, sobald ein Besucher das Widget öffnet.
- Untertitel — kleiner Text unter dem Titel im Header.
- Input-Placeholder — Text im leeren Eingabefeld.
- Loading-Text — wird angezeigt, während auf die Assistenten-Antwort gewartet wird.
- Fehlermeldung — wird angezeigt, wenn der Backend-Aufruf scheitert oder in ein Timeout läuft.
- Feedback-Aufforderung — Text über den Daumen-hoch/-runter-Controls (wenn Feedback aktiv ist).
- Text der Balloon-Benachrichtigung — Text, der im Sprechblasen-Hinweis erscheint.
Sichtbarkeitsregeln
- Anzeigen auf — Auswahl zwischen Allen Seiten, Nur auf ausgewählten Seiten oder Überall außer auf ausgewählten Seiten. Seiten-IDs werden als kommagetrennte Liste eingegeben.
- Für eingeloggte Nutzer ausblenden — schaltet das Widget für authentifizierte Sitzungen aus.
- Mobile-Breakpoint — Viewport-Breite, unterhalb derer das Widget auf ein kompaktes Layout schrumpft.
Feedback & Analytics
- Feedback-Buttons aktivieren — fügt unter jeder Assistenten-Nachricht Daumen-hoch- und Daumen-runter-Controls hinzu.
- Konversationen speichern — bewahrt das vollständige Transcript in
der Tabelle
wp_chatbotpilot_conversationsfür Review und Export auf. - Aufbewahrungsdauer — Anzahl Tage, nach denen gespeicherte
Konversationen vom täglichen Cron entfernt werden.
0= unbegrenzt.
Health-Check
Das Health-Check-Panel ist oben auf dem Einstellungsbildschirm immer sichtbar. Es führt drei Proben aus und zeigt für jede einen farbigen Status-Pill:
- Provider-Erreichbarkeit — ruft die LLM-API mit einem Ein-Token-Ping auf.
- Index-Status — zählt die Chunks im SQLite-Store und meldet den Zeitstempel des letzten erfolgreichen Reindex.
- Webhook-Erreichbarkeit (n8n-Modus) — sendet einen
OPTIONS-Request an die konfigurierte Webhook-URL.
Jeder nicht-grüne Status ist anklickbar und blendet die wortgleich vom darunterliegenden Aufruf zurückgegebene Fehlermeldung ein — in der Regel reicht das zur Diagnose.
Nutzung
Für Besucher
Das Widget erscheint auf jeder Seite, auf der die Sichtbarkeitsregeln greifen. Der Besucher klickt den Launcher-Button, um das Fenster zu öffnen, liest die Willkommensnachricht und tippt eine Frage in das Eingabefeld. Ein Druck auf Enter oder den Senden-Button schickt die Nachricht ab; das Widget zeigt den Loading-Text und rendert anschließend die Assistenten-Antwort mit Markdown-Formatierung (Fett, Links, nummerierte und Aufzählungs-Listen, Code-Blöcke).
Sind die Feedback-Buttons aktiv, kann der Besucher jede Assistenten-Nachricht bewerten. Das Rating wird gegen die Nachrichten-ID gespeichert, sodass dieselbe Antwort später im Adminbereich überprüft werden kann.
Für Administratoren
Die tägliche Administration läuft an zwei Orten:
- Einstellungen → Chatbot Pilot für die Konfiguration und das Health-Check-Panel.
- Chatbot Pilot → Konversationen für das Konversations-Log und den Feedback-Export.

Das Konversations-Log listet jede Sitzung mit Datum, ursprünglicher Seite, Anzahl der Nachrichten und aggregiertem Feedback. Jede Zeile lässt sich aufklappen, um das vollständige Transcript anzuzeigen — inklusive der abgerufenen Kontextpassagen im nativen RAG-Modus. Der Button CSV exportieren oben in der Liste erzeugt eine UTF-8-CSV mit einer Zeile pro Nachricht; etwaige Datum- oder Bewertungsfilter werden berücksichtigt.
Reindex nach Inhaltsänderungen
Der native Index aktualisiert sich nicht in Echtzeit. Stoßen Sie einen Reindex an, wenn:
- Sie eine Reihe von Beiträgen veröffentlichen oder substanziell bearbeiten;
- Sie Chunk-Größe, Quellpfad oder Embedding-Modell ändern;
- das Health-Check-Panel den Index als veraltet oder leer meldet.
Für inkrementelle Aktualisierungen indiziert das Plugin einen einzelnen Beitrag beim Speichern automatisch neu, sobald Auto-Reindex beim Speichern im Tab Wissensdatenbank aktiv ist. Das verursacht einen kleinen Overhead pro Speichern, hält die Wissensdatenbank aber ohne manuelles Zutun synchron.
Backend wechseln
Sie können jederzeit zwischen n8n und Native RAG wechseln. Widget, Konversations-Log und Feedback-Speicher sind modusübergreifend dieselben. Beim ersten Wechsel auf Native RAG müssen Sie Reindex ausführen, bevor das Widget Antworten liefern kann.
Screenshots
Die folgenden Screenshots entsprechen den vier Hauptbereichen der Admin-Oberfläche und dem Frontend-Widget.
Frontend-Chat-Widget

KI-Anbieter-Konfiguration

Editor für das Widget-Aussehen

Konversations-Log und Feedback-Export

FAQ
Welches Backend sollte ich wählen?
Nehmen Sie Native RAG, wenn Sie Fragen zu Ihren eigenen Site-Inhalten beantworten möchten und eine autarke Lösung suchen, die nur einen LLM-API-Key braucht. Nehmen Sie n8n, wenn Sie den Chatbot mit externen Tools kombinieren wollen (CRM-Abfragen, Ticketing, eigenes Routing) oder wenn die Konversation Aktionen außerhalb von WordPress auslösen soll.
Muss ich n8n installieren, um das Plugin zu nutzen?
Nein. n8n ist nur dann nötig, wenn Sie n8n als Backend-Modus wählen. Native RAG ist vollständig autark.
Werden meine Daten an Dritte geschickt?
Im nativen RAG-Modus werden jeder Prompt und der abgerufene Kontext an den von Ihnen gewählten LLM-Anbieter geschickt. Ist das nicht akzeptabel, betreiben Sie das Plugin gegen eine lokale Ollama-Instanz — in diesem Fall verlässt kein Datum den Server. Im n8n-Modus wird jede Nachricht an Ihren eigenen n8n-Endpunkt geschickt; was danach passiert, hängt vom Workflow ab, den Sie bauen.
Wo wird der Index gespeichert?
Der Vektor-Index ist eine SQLite-Datei in
wp-content/uploads/chatbot-pilot/. Die WordPress-Optionentabelle
hält die Chatbot-Konfiguration, die Tabelle
wp_chatbotpilot_conversations das Konversations-Log.
Kann ich es auf einer mehrsprachigen Site einsetzen?
Ja. Mit installiertem Polyglot ingestiert der Indexer die übersetzten Versionen jedes Beitrags und die Widget-Texte werden pro Sprache ausgeliefert. Auch ohne Polyglot lässt sich pro Sprache je ein Widget betreiben, indem der Quellpfad auf sprachspezifische Kategorien beschränkt wird.
Werden Custom Post Types unterstützt?
Ja. Tragen Sie die CPT-Slugs kommagetrennt im Feld Quellpfad ein und reindexieren Sie.
Kann ich Konversationen exportieren?
Ja. Der Button CSV exportieren auf dem Konversations-Bildschirm erzeugt eine UTF-8-CSV-Datei mit einer Zeile pro Nachricht — inklusive Rating, Zeitstempel, Ursprungsseite und vollständigem Nachrichtentext.
Wie lösche ich die Daten eines Besuchers?
Öffnen Sie Chatbot Pilot → Konversationen, filtern Sie nach Session-ID oder IP und nutzen Sie die Aktion Löschen in den passenden Zeilen. Die Konversation und ihre Feedback-Einträge werden sofort entfernt.
Funktioniert das Widget ohne JavaScript?
Nein. Das Widget ist eine JavaScript-basierte Single-Page-Komponente und fällt nicht graceful auf einen noscript-Fallback zurück.
Fehlerbehebung
Das Widget erscheint nicht im Frontend
- Stellen Sie sicher, dass der Backend-Modus gesetzt und die nötigen Zugangsdaten (API-Key oder Webhook-URL) gespeichert sind.
- Prüfen Sie die Sichtbarkeitsregeln — die Seite kann ausgeschlossen sein.
- Inspizieren Sie die Browser-Konsole: eine 4xx-Antwort von
admin-ajax.phpdeutet meist auf ein Berechtigungs- oder Nonce-Problem hin, das von einem aggressiven Cache-Plugin verursacht wird.
Der Assistent antwortet mit der Fehlermeldung
Öffnen Sie das Health-Check-Panel und klicken Sie auf den roten Status-Pill, um die Provider-Fehlermeldung wortgleich zu lesen. Häufige Ursachen:
- Abgelaufener oder widerrufener API-Key.
- Das gewählte Modell ist für Ihr Konto oder Ihre Region nicht verfügbar.
- Rate-Limit überschritten — warten oder den Provider-Tarif upgraden.
- Die Webhook-URL liefert einen Nicht-2xx-Status.
Der Reindex scheint zu hängen
WordPress-Cron feuert nur, wenn die Site Traffic erhält. Lösen Sie
entweder manuell einen Seitenaufruf aus oder starten Sie aus WP-CLI
wp cron event run --due-now. Der Fortschrittsbalken aktualisiert
sich alle paar Sekunden, solange der Job läuft.
Antworten sind off-topic oder halluziniert
- Reindexieren Sie nach kürzlichen Inhaltsänderungen.
- Erhöhen Sie Top-K, um dem Modell mehr Kontext zu geben.
- Verringern Sie Chunk-Größe für ein feineres Retrieval und reindexieren Sie anschließend.
- Probieren Sie ein stärkeres Modell (z. B. von GPT-4o-mini auf GPT-4o oder von Gemini Flash auf Gemini Pro).
Ollama-Antworten sind sehr langsam
Die Geschwindigkeit lokaler Inferenz hängt vollständig vom Host ab.
Verwenden Sie ein quantisiertes Modell (:q4_K_M o. Ä.), stellen Sie
sicher, dass GPU-Beschleunigung aktiv ist, und halten Sie Chunk-Größe
sowie Top-K moderat.
Konversationen werden nicht gespeichert
Prüfen Sie, dass Konversationen speichern im Tab Feedback & Analytics aktiv ist und dass die Tabelle
wp_chatbotpilot_conversations existiert. Deaktivieren und Reaktivieren
des Plugins legt fehlende Tabellen neu an.