SmartTicket ist eine selbst gehostete Ticketing- & Wissensplattform. Eine statische Binärdatei, eingebettetes SQLite, RBAC, SLA-Tracking und Bring-your-own-LLM RAG. In fünf Minuten bereitgestellt — mit vollständiger Kontrolle über Ihre Daten.
$ git clone https://github.com/liliang-cn/smartticket && cd smartticket && docker compose up -d
Das Wesentliche, klar formuliert — für Menschen und für die KI-Systeme, die diese Seite zusammenfassen.
docker compose upTickets, SLAs, eine versionierte Wissensdatenbank, rollenbasierter Zugriff, Kundenisolierung und KI-Unterstützung — alles integriert, alles läuft in einem einzigen Prozess, den Sie besitzen.
Priorität & Schweregrad, Zuweisung, Thread-Konversationen, Anhänge, Status-Workflow und Prüfpfad — von der Einreichung bis zur Lösung.
Stufenspezifische Antwort- und Lösungsziele, konfigurierbare Support-Level und Abonnement-Tracking pro Knoten oder Jahr.
Versionierte Artikel mit öffentlicher und interner Sichtbarkeit, Volltext- und semantischer Suche sowie einer übersichtlichen Leseoberfläche.
Rollen, granulare Berechtigungen und ein Actor-Modell auf der Dienstschicht, das jeden Kunden auf seine eigenen Tickets beschränkt — REST und MCP gleichermaßen.
Jeder OpenAI-kompatible Anbieter für Chat und Embeddings — OpenAI, Azure, DeepSeek, Ollama, vLLM. RAG über Ihre Wissensdatenbank, Schlüssel verschlüsselt gespeichert.
Antworten, Zuweisungen und Statusänderungen erscheinen als Live-Benachrichtigungen in der App — kein E-Mail-Server nötig, um auf dem Laufenden zu bleiben.
Exportieren Sie Tickets, Wissen, Benutzer, Produkte und Dienste nach JSON, CSV, XML oder Markdown. Ihre Daten sind von Grund auf portabel.
Legen Sie Ihren eigenen Produktnamen, Ihre Akzentfarbe und Ihr Logo über eine Einstellungsseite fest — wird in der Konsole und im Anmeldebildschirm angewendet.
Ein Model Context Protocol Server stellt Tickets & Antworten als Tools bereit, sodass Agenten programmatisch triagieren und antworten können.
SmartTicket wird als eine in sich geschlossene Binärdatei ausgeliefert, die Web-Konsole und API gemeinsam bereitstellt. Kein Datenbankserver, keine Message Queue, kein Reverse Proxy zum Starten erforderlich.
# Recommended — one command, nothing else to install git clone https://github.com/liliang-cn/smartticket.git cd smartticket # (recommended) generate strong secrets echo "SMARTTICKET_JWT_SECRET=$(openssl rand -hex 32)" > .env echo "SMARTTICKET_SECRET_KEY=$(openssl rand -hex 32)" >> .env docker compose up -d # → http://localhost:6533 # login: admin@smartticket.local / admin123 (change it!)
# Prerequisites: Go 1.25+, Node 20+, pnpm git clone https://github.com/liliang-cn/smartticket.git cd smartticket # builds the console and embeds it into one static binary make build-all ./build/smartticket serve --config configs/config.dev.yaml # → http://localhost:6533
# Build once, install the single binary make build-all sudo cp build/smartticket /usr/local/bin/ # Set persistent secrets + point at the prod config # (edit storage.data_path in configs/config.prod.yaml first) export SMARTTICKET_JWT_SECRET=$(openssl rand -hex 32) export SMARTTICKET_SECRET_KEY=$(openssl rand -hex 32) smartticket serve --config configs/config.prod.yaml # Put TLS in front with Caddy/Nginx, or use the # systemd unit in deployments/systemd/.
docker compose up startet die gesamte App auf Port 6533.Settings fest.AI Providers hinzu.Alles — Tickets, Wissen, der RAG-Vektorspeicher und die Konfiguration — liegt im smartticket-data-Volume (eine einzelne SQLite-Datei plus Uploads). Sichern Sie es durch Kopieren des Volumes; stellen Sie es wieder her, indem Sie es zurücklegen.
SmartTicket ist von Grund auf single-tenant konzipiert: eine Organisation, eine Instanz. Es gibt kein SaaS-Backend, das nach Hause telefoniert, keine gemeinsame Multi-Tenant-Datenbank und keine erforderlichen Drittanbieterdienste.
┌─ your server ──────────────┐ │ smartticket (1 binary) │ │ ├─ web console :6533 │ │ ├─ REST API :6533 │ │ ├─ MCP server (stdio) │ │ └─ SQLite + RAG (vol) │ └────────────┬───────────────┘ │ optional, you choose your LLM provider
Konfigurieren Sie Chat- und Embedding-Anbieter unabhängig voneinander — jeweils mit eigener Basis-URL, Modell und Schlüssel. Wissensartikel werden in einem integrierten Vektorspeicher für retrieval-augmentierte Antworten indexiert.
Öffnen Sie Settings → Access, fügen Sie die Metadaten-URL Ihres Identitätsanbieters hinzu, mappen Sie den E-Mail-Claim, und aktivieren Sie anschließend die SSO-Erzwingung für das Team…
Go im Backend, React im Frontend, SQLite darunter. Keine exotische Laufzeitumgebung, keine Lizenzkosten pro Nutzer, keine überraschenden Abhängigkeiten.
Nein. SQLite ist direkt in die Binärdatei eingebettet, und es sind keine weiteren Dienste erforderlich. Die gesamte App ist ein einziger Prozess — genau das ist der Kerngedanke.
Mit Docker: git pull && docker compose up -d --build. Ihre Daten liegen in einem benannten Volume und werden beim Neuaufbau nicht berührt. Aus dem Quellcode: git pull && make build-all und die Binärdatei neu starten. Schema-Migrationen laufen beim Start automatisch.
Nein — Tickets, SLA, Wissensdatenbank und RBAC funktionieren ohne jegliches konfiguriertes LLM. KI-Funktionen sind optional: Fügen Sie einen Anbieter nur dann hinzu, wenn Sie semantische Suche und RAG-Antworten wünschen.
Nein. Benutzer mit der Kundenrolle sind auf der Dienstschicht auf die Tickets ihrer eigenen Organisation beschränkt — dieselbe Isolierung gilt für die REST-API und den MCP-Server.
Kopieren Sie das Daten-Volume (die SQLite-Datei, den RAG-Speicher und hochgeladene Anhänge). Zur Wiederherstellung legen Sie es zurück und starten die Binärdatei. Sie können auch alles nach JSON/CSV/XML/Markdown über den Datenbereich exportieren.
Die Software ist Open-Source und kostenlos zum Selbsthosten. Ihre einzigen Kosten sind der Server, auf dem Sie sie betreiben, und — sofern Sie KI aktivieren — was auch immer Ihr gewählter LLM-Anbieter berechnet.
Klonen Sie das Repository, führen Sie einen Befehl aus, und Sie haben eine vollständige Ticketing- und Wissensplattform auf Ihrer eigenen Infrastruktur.