Plugins verwalten
Installation, Aktivierung, Deinstallation und Demo-Plugin-Laden — alle Aktionen auf der Meine-Plugins-Seite des sellx Hub.
Funktions-Handbuch · Endkunden
Die Seite Meine Plugins (/plugins) listet alle installierten Plugins und erlaubt Installation, Aktivierung, Deinstallation.
Datei: sellx-hub/src/pages/PluginsPage.tsx
Übersicht

┌─────────────────────────────────────────────────────┐
│ Meine Plugins [Demo-Plugin laden] │
│ 3 Plugin(s) installiert [.sellxpkg installieren] │
├─────────────────────────────────────────────────────┤
│ Name │ Kat. │ Ver. │ Q │ Status │ Akt.│
├───────────────────┼──────┼──────┼───┼────────┼─────┤
│ Artikel-KPI │ Rep. │1.0.0 │ 2 │ ● Aktiv │ Aus. Entf.│
│ Cross-Seller │ An. │1.0.0 │ 1 │ ● Aktiv │ Aus. Entf.│
│ Wer-gekauft │ An. │1.0.0 │ 1 │ ○ Deakt.│ Aus. Entf.│
└─────────────────────────────────────────────────────┘Aktionen
.sellxpkg installieren

Klick auf .sellxpkg installieren öffnet einen File-Dialog. Auswahl einer .sellxpkg-Datei löst aus:
invoke("install_plugin", { filePath })Ablauf im Sidecar:
- 1. ZIP-Archiv öffnen und validieren
- 2.
manifest.jsonparsen - 3.
requiresDbRolemit konfigurierter Rolle abgleichen - 4. SQL-Files verschlüsseln (AES-256-GCM mit Lizenz-abgeleitetem Key)
- 5. Plugin-Metadaten in
data.db.plugins-Tabelle schreiben - 6. Verschlüsselte SQL-Files nach
%APPDATA%\sellx-hub\plugins\<id>\schreiben
Mögliche Fehler:
| Fehler | Bedeutung |
|---|---|
| PARSE_ERROR | ZIP korrupt oder kein manifest.json |
| MISSING_FIELD | Pflichtfeld im Manifest fehlt |
| DB_ROLE_MISMATCH | Plugin braucht write, User hat nur read |
| ENCRYPTION_FAILED | Lizenz-Token ungültig, kann Master-Key nicht ableiten |
Plugin aktivieren / deaktivieren

Klick auf den Status-Badge schaltet um:
invoke("toggle_plugin", { pluginId, enabled: !currentEnabled })Deaktivierte Plugins bleiben installiert, werden aber:
- — Nicht im Workspace als Tab angezeigt
- — Bei
get_pluginsmitenabled: falsezurückgegeben
Plugin deinstallieren

Klick auf Entfernen löst aus:
invoke("uninstall_plugin", { pluginId })Ablauf:
- 1. Plugin-Eintrag aus
data.db.pluginslöschen - 2. Verschlüsselte SQL-Files unter
%APPDATA%\sellx-hub\plugins\<id>\löschen - 3. Open-Tabs mit diesem Plugin schließen
Hinweis: Deinstallation entfernt nicht die Lizenz. Das Plugin kann jederzeit wieder installiert werden.
Demo-Plugin laden
Klick auf Demo-Plugin laden erstellt ein temporäres Demo-Plugin ohne .sellxpkg-Datei. Nützlich zum Testen der UI ohne echtes Plugin.
Status-Anzeige
| Badge | Bedeutung |
|---|---|
| ● Aktiv (grün) | Plugin wird ausgeführt, im Workspace verfügbar |
| ○ Deaktiviert (grau) | Plugin installiert, aber nicht ausführbar |
Plugin-Sichtbarkeit
| Aktion | Auswirkung |
|---|---|
| Aktivieren | Plugin erscheint im Workspace-Tab-Dropdown |
| Deaktivieren | Tab wird aus Workspace entfernt (falls offen) |
| Deinstallieren | Plugin verschwindet komplett aus der Liste |
Grace-Period-Einfluss
Wenn die sellx-Lizenz in der Grace-Period ist (Heartbeat älter als 7 Tage), werden:
- — Alle Plugins mit
enabled: falseangezeigt - — Plugin-Ausführung schlägt mit
LICENSE_INACTIVEfehl - — Banner oben:
⚠️ Heartbeat fehlt seit X Tagen(gelb)
Nach 30 Tagen Grace-Period: Banner wechselt auf rot (🚫), alle Plugins sind deaktiviert und nicht ausführbar.
Siehe Architektur → Grace-Period für Details.