DeskcommCRM: So deployen Sie ein Open-Source-CRM mit KI-Agenten für WhatsApp auf Ihrem eigenen Server
WhatsApp-Vertrieb erfordert ständige Einbindung des Managers oder die Anbindung an Drittanbieterdienste wie Kommo oder Intercom. Mit wachsender Kundendatenbank werden Abonnementgebühren und Kosten pro Sitzplatz zu erheblichen Ausgaben. Entwickler Rafael Melgara aus Brasilien hat DeskcommCRM auf GitHub veröffentlicht. Es ist ein selbstgehostetes Vertriebsmanagementsystem, das für KI-Agenten und Messenger-Integration entwickelt wurde.
Das Projekt positioniert sich als Vertriebsmanagementsystem für kleine und mittlere Unternehmen. Anfangs wurde es für einen Online-Shop mit Nuvemshop-Integration erstellt, später wurde die Architektur überarbeitet. Das Ergebnis ist eine flexible Lösung für Kliniken, Immobilienagenturen, Info-Unternehmen und alle Dienstleistungen, die Anfragen aus Chats erhalten.
Technologie-Stack und Architektur
Architektonisch basiert DeskcommCRM auf einem vertrauten Stack für moderne Web-Anwendungen:
- Frontend und Backend: Next.js 16 (App Router) mit React 19 und TypeScript im Strict-Modus.
- Datenbank und Authentifizierung: Supabase (PostgreSQL) mit aktiver Nutzung des Row Level Security (RLS)-Mechanismus und der pgvector-Erweiterung für Vektorsuche.
- WhatsApp-Integration: WAHA (WhatsApp HTTP API) auf der NOWEB-Engine, läuft in einem Docker-Container.
- KI-Schicht: Vercel AI SDK v7 mit Integration von Anthropic Claude, OpenAI und Google Gemini-Modellen.
Das System enthält einen integrierten MCP (Model Context Protocol)-Server. Das bedeutet, dass externe KI-Agenten über ein gemeinsames Protokoll eine Verbindung zur CRM herstellen und Operationen mit dem Vertriebstrichter durchführen können.
Intelligente Agenten statt gewöhnlicher Auto-Responder
In DeskcommCRM arbeiten KI-Agenten anders als traditionelle Chatbots mit starren Szenario-Bäumen. Der Bot übernimmt die Rolle eines verantwortlichen Managers: Er führt Dialoge, qualifiziert Leads, bewegt sie durch Trichter-Karten und überträgt die Konversation an einen Menschen, wenn er nicht selbstständig antworten kann.
Für jeden Kunden wird eine isolierte Wissensbasis erstellt. Erfolgreich abgeschlossene Dialoge werden in den Vektorspeicher zurückgespeist. So sammelt der Agent nach und nach Kontext und wird bei der Beantwortung typischer Fragen genauer. Gleichzeitig wird die Übergabe der Kontrolle an Menschen durch Regeln gesteuert, um zu verhindern, dass der Bot unnötige Nachrichten sendet.
Webhooks und Verarbeitungswarteschlangen
Für den Empfang von Anfragen von externen Landingpages und Formularen bietet das System Webhook-Eingangspunkte. Jede POST-Anfrage mit Parametern im JSON- oder urlencoded-Format erstellt sofort einen Lead im erforderlichen Stadium des Trichters.
Die interne Ereignisverarbeitung ist interessant aufgesetzt. Um PostgreSQL-Trigger nicht mit HTTP-Anfragen zu überlasten, hat der Entwickler ein Event-Tabellen-Muster angewendet. Alle Aktionen (Lead-Statusänderung, Tag-Erscheinen, eingehende Nachricht) werden in der Tabelle aufgezeichnet. Ein Hintergrundprozess ruft einmal pro Minute Ereignisse aus der Warteschlange ab und führt Automatisierungen vom Typ „wenn/dann" aus.
In der Praxis sieht das Schema folgendermaßen aus:
In der Vercel-Cloud löst diese Route einen regulären Cron Job aus, und bei der Bereitstellung auf Ihrem eigenen Server wird der Start vom System übernommen.
Sicherheit und Überprüfung der Datenisolierung
Da die CRM Multi-Tenancy unterstützt, ist es entscheidend sicherzustellen, dass ein Unternehmen nicht die Kontakte oder Konversationen anderer Unternehmen sieht. In DeskcommCRM basiert die Isolierung auf RLS-Richtlinien in PostgreSQL.
Das Repository verfügt über eine konfigurierte CI-Pipeline, die bei jedem Pull 364 Invarianztests auf einer sauberen Datenbankinstanz ausführt. Einer der Schlüsseltests generiert zwei verschiedene Organisationen, simuliert Benutzer-JWT-Token und prüft, ob die Datenbank mindestens eine Zeile eines anderen Unternehmens zurückgibt. Wenn die Sicherheitsrichtlinie fremde Daten preisgibt, schlägt der Build fehl.
Schneller Start in der lokalen Umgebung
Um den Code zu erkunden, kann das Projekt lokal in wenigen Minuten hochgefahren werden. Sie benötigen Node.js Version 22, pnpm und Docker.
Für eine vollständige Bereitstellung auf einem VPS hat der Autor einen Satz von Skripten vorbereitet. Das Skript selbst fragt nach der Domain, Supabase-Schlüsseln, neuronalen Netzwerk-API-Schlüsseln, generiert Token und bringt einen fertigen Stack mit HTTPS-Zertifikaten hoch.
Einschränkungen und Projekteigenschaften
Beim Erkunden des Repositories sind einige Nuancen zu beachten:
- Ein Teil der Code-Kommentare und Dokumentation ist auf Portugiesisch verfasst, da das Projekt zunächst für den brasilianischen Markt erstellt wurde.
- Das Repository ist noch relativ jung, mit etwas über 300 Sternen auf GitHub.
- Die WhatsApp-Integration basiert auf WAHA, daher ist es bei hoher Nachrichtenaktivität wichtig, Verzögerungen und Sendeintervalle zu konfigurieren, um eine Nummer-Sperrung zu verhindern.
Für wen ist DeskcommCRM nützlich
Das Projekt ist nützlich für Webstudios und Freiberufler, die schlüsselfertige CRM-Systeme für kleine Unternehmen erstellen und nicht für monatliche Abonnements von Drittanbieterdiensten bezahlen möchten. Der Code ist auch für Entwickler als qualitativ hochwertige Referenz wertvoll: Sie finden Beispiele für saubere Next.js 16-Nutzung, RAG-Setup mit pgvector, MCP-Server-Implementierung und RLS-Richtlinientests in PostgreSQL.
Ähnliche Projekte