Open Source · Self-hosted · Single-tenant

Ihr Support-Desk und Ihre Wissensdatenbank — auf Ihrer eigenen Infrastruktur.

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
1
statische Binärdatei
<512MB
Speicherbedarf
0
externe Dienste
SQLite
eingebettete Datenbank
100%
Ihre Daten
https://support.your-company.com
Dashboard
Tickets
Knowledge
Customers
Access
AI Providers
Arbeitsbereich-Übersicht
128
Offene Tickets
96%
SLA eingehalten
2,4 Std.
Ø Erstantwort
312
KB-Artikel
E-Mail-Benachrichtigungen nach Update ausgefallendringendSLA ok
Wie konfiguriere ich SSO mit unserem Anbieter?hochSLA ok
Tickets eines Kunden als CSV exportierennormalbeantwortet
// auf einen blick

SmartTicket auf einer Seite.

Das Wesentliche, klar formuliert — für Menschen und für die KI-Systeme, die diese Seite zusammenfassen.

Was es istQuelloffene, selbst gehostete Ticketing- & Wissensdatenbank
ModellSingle-tenant — eine Instanz pro Organisation
LizenzMIT — kostenlos zum Selbsthosten
StackGo 1.25 · React + TypeScript · SQLite
DeploymentEine statische Binärdatei, oder docker compose up
AbhängigkeitenKeine — eingebettetes SQLite; kein DB-, Redis- oder Proxy-Dienst erforderlich
KIBring-your-own OpenAI-kompatibler LLM + RAG (optional)
Ressourcen< 512 MB RAM; läuft offline / air-gapped
// alles in einer binärdatei

Ein vollständiger Support-Stack — nichts zu verkabeln.

Tickets, SLAs, eine versionierte Wissensdatenbank, rollenbasierter Zugriff, Kundenisolierung und KI-Unterstützung — alles integriert, alles läuft in einem einzigen Prozess, den Sie besitzen.

Vollständiger Ticket-Lebenszyklus

Priorität & Schweregrad, Zuweisung, Thread-Konversationen, Anhänge, Status-Workflow und Prüfpfad — von der Einreichung bis zur Lösung.

SLA-Tracking

Stufenspezifische Antwort- und Lösungsziele, konfigurierbare Support-Level und Abonnement-Tracking pro Knoten oder Jahr.

Wissensdatenbank

Versionierte Artikel mit öffentlicher und interner Sichtbarkeit, Volltext- und semantischer Suche sowie einer übersichtlichen Leseoberfläche.

RBAC & Kundenisolierung

Rollen, granulare Berechtigungen und ein Actor-Modell auf der Dienstschicht, das jeden Kunden auf seine eigenen Tickets beschränkt — REST und MCP gleichermaßen.

Bring-your-own LLM + RAG

Jeder OpenAI-kompatible Anbieter für Chat und Embeddings — OpenAI, Azure, DeepSeek, Ollama, vLLM. RAG über Ihre Wissensdatenbank, Schlüssel verschlüsselt gespeichert.

In-App-Benachrichtigungen

Antworten, Zuweisungen und Statusänderungen erscheinen als Live-Benachrichtigungen in der App — kein E-Mail-Server nötig, um auf dem Laufenden zu bleiben.

Import / Export

Exportieren Sie Tickets, Wissen, Benutzer, Produkte und Dienste nach JSON, CSV, XML oder Markdown. Ihre Daten sind von Grund auf portabel.

White-Label-Branding

Legen Sie Ihren eigenen Produktnamen, Ihre Akzentfarbe und Ihr Logo über eine Einstellungsseite fest — wird in der Konsole und im Anmeldebildschirm angewendet.

Integrierter MCP-Server

Ein Model Context Protocol Server stellt Tickets & Antworten als Tools bereit, sodass Agenten programmatisch triagieren und antworten können.

// herunterladen → starten

Eigene Instanz in fünf Minuten deployen.

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/.
1Klonen & starten. Ein docker compose up startet die gesamte App auf Port 6533.
2Anmelden. Nutzen Sie den voreingestellten Admin-Account und ändern Sie das Passwort sofort.
3Branding anpassen. Legen Sie Name, Farbe und Logo unter Settings fest.
4KI verbinden (optional). Fügen Sie einen OpenAI-kompatiblen Chat- & Embedding-Anbieter unter AI Providers hinzu.
Daten & Backups

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.

// datenhoheit

Ihre Daten verlassen Ihren Server nie.

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.

  • Eingebettetes SQLite — läuft vollständig offline, air-gapped wenn gewünscht.
  • LLM-API-Schlüssel im Ruhezustand mit AES-256-GCM verschlüsselt.
  • Vollständiger Export in offene Formate — kein Vendor-Lock-in, niemals.
single-tenant topology
┌─ your server ──────────────┐
│  smartticket (1 binary)    │
│   ├─ web console  :6533    │
│   ├─ REST API     :6533    │
│   ├─ MCP server   (stdio)  │
│   └─ SQLite + RAG (vol)    │
└────────────┬───────────────┘
             │ optional, you choose
        your LLM provider
// eigene KI einbinden

KI-Unterstützung — zu Ihren Bedingungen.

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.

OpenAI Azure OpenAI DeepSeek Aliyun Bailian Ollama vLLM LocalAI …jeder OpenAI-kompatible
retrieval-augmentierte Antwort
F: Wie aktiviere ich Single Sign-on für mein Team?
ANTWORT · zitiert aus 3 KB-Artikeln

Ö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…

// entwickelt für betreiber

Gebaut auf einem bewährten, zuverlässigen Stack.

Go im Backend, React im Frontend, SQLite darunter. Keine exotische Laufzeitumgebung, keine Lizenzkosten pro Nutzer, keine überraschenden Abhängigkeiten.

Go 1.25· Backend
GIN + GORM· API & ORM
SQLite· eingebettet (CGO-frei)
React + TypeScript· Konsole
Vite + Tailwind· Build & Styling
JWT + RBAC· Authentifizierung
CortexDB· RAG-Vektorspeicher
Docker· Ein-Befehl-Deployment
// fragen

Häufig gestellte Fragen.

Benötige ich einen Datenbankserver oder Redis?+

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.

Wie aktualisiere ich auf eine neue Version?+

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.

Ist KI erforderlich, um die Software zu nutzen?+

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.

Können Kunden die Tickets der anderen sehen?+

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.

Wie sichere ich meine Instanz?+

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.

Was kostet es?+

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.

// in fünf minuten startklar

Übernehmen Sie die Kontrolle über Ihren Support-Stack.

Klonen Sie das Repository, führen Sie einen Befehl aus, und Sie haben eine vollständige Ticketing- und Wissensplattform auf Ihrer eigenen Infrastruktur.