Zum Hauptinhalt springen

Elgato Stream Deck Entwickler-Guide

Was dieser Guide abdeckt

Dieser Guide erklärt, wie du Stream Deck Plugins schnell erstellst, wann du das offizielle JavaScript/TypeScript SDK nutzt, wann Python der bessere Weg für lokale Steuerung ist und wo .NET/C# für native Plugin-Autoren passt.

Quellenstand zum 1. Juli 2026

Der primäre Plugin-Weg basiert auf Elgatos Dokumentation zum Stream Deck SDK 2.0.0, dem offiziellen Repository elgatosf/streamdeck, der Dokumentation der Stream Deck CLI, python-elgato-streamdeck und StreamDeckToolkit. Produktanforderungen und Marketplace-Regeln ändern sich, prüfe daher die verlinkten Quellen vor der Veröffentlichung.

1. Die Kurzfassung​

Nutze TypeScript mit dem offiziellen Elgato SDK für normale Stream Deck Plugins.

Nutze Python mit python-elgato-streamdeck, wenn du das physische Gerät direkt steuern willst, üblicherweise ohne die offizielle Stream Deck App.

Nutze C#/.NET, wenn du eine native Plugin-Architektur brauchst, bestehende .NET-Businesslogik hast oder Windows-lastige Integrationen umsetzt und mit einem weniger aktuellen Ökosystem als Elgatos offiziellem Node.js-Weg zurechtkommst.

Vermeide das rohe WebSocket-Protokoll, wenn du keinen triftigen Grund hast. Elgato dokumentiert es für native Konsolen-Apps, beschreibt native Plugins aber ausdrücklich als fortgeschritten und empfiehlt das Node.js SDK für die meisten Entwickelnden.

2. Wege durch diesen Guide​

ZielHier startenWarum
Ein Marketplace-fähiges Plugin erstellenJavaScript- und TypeScript-PluginsOffizielles SDK, CLI, Scaffold, Build, Watch, Pack
Zwischen JS, Python und C# entscheidenArchitektur und SDK-KarteVergleicht Plugin-SDKs, direktes HID, native Plugins und UI-Optionen
Ein lokales Automatisierungs-Panel bauenPython HID-AutomatisierungDirekte Gerätesteuerung, Tastenbilder, Callbacks, Helligkeit
Nutzerkonfigurierbare Plugin-Einstellungen hinzufügenManifest und Property InspectorsAction-Metadaten, Einstellungen, HTML-Inspectors, UI-Bibliothek
Ein Plugin für die Auslieferung vorbereitenPackaging und DistributionValidierung, .streamDeckPlugin, Marketplace, DRM-Bereitschaft
Merkwürdiges Verhalten debuggenFehlerbehebungs-ChecklistePlugin-Sichtbarkeit, Hot Reload, Berechtigungen, Logs, Gerätekonflikte

3. Mentales Modell​

Ein Stream Deck Projekt kann eine von zwei sehr unterschiedlichen Sachen sein:

ModellRuntimeNutzererlebnisBeste Sprache
Stream Deck PluginLäuft unter der Stream Deck Desktop-AppNutzende installieren ein Plugin, fügen Actions zu Profilen hinzu, konfigurieren Property InspectorsTypeScript / JavaScript
Direkter GerätecontrollerSpricht direkt über HID mit der HardwareDeine App besitzt das Deck und zeichnet jeden Zustand jeder Taste/jedes BildschirmsPython

Die meiste Verwirrung entsteht durch das Vermischen dieser Modelle. Python kann exzellent sein, um die Hardware zu steuern, aber es ist nicht der schnellste Weg, ein normales Stream Deck Marketplace-Plugin zu produzieren. Das offizielle SDK gibt dir die Integration in die Stream Deck App, Manifest-Konventionen, den Property-Inspector-Weg, den Packaging-Workflow und eine Marketplace-fähige Struktur.

4. Aktuelle offizielle Basis​

Elgatos aktuelle SDK- und CLI-Doku listet diese praktischen Anforderungen:

  • Node.js 24 oder neuer für aktuelle SDK/CLI-Entwicklung.
  • Stream Deck App 7.1 oder neuer.
  • Ein Stream Deck Gerät oder Stream Deck Mobile zum Testen, wenn keine Hardware verfügbar ist.
  • @elgato/cli zum Scaffolding, Linken, Neustarten, Validieren und Packen von Plugins.
  • Eine Reverse-DNS-Plugin-UUID, etwa com.example.timer.

Das von streamdeck create generierte Scaffold erzeugt einen Quellbaum mit src/, einem kompilierten *.sdPlugin/-Verzeichnis, manifest.json, ui/, imgs/, Build-Skripten und einem Watch-Workflow.

5. Empfohlener Ablauf für das erste Plugin​

nvm install 24
nvm use 24
npm install -g @elgato/cli@latest
streamdeck create
cd my-plugin
npm run watch

Ändere dann eine Action nach der anderen:

  1. Bearbeite die Action-Implementierung in src/actions/.
  2. Halte die Action-UUID stabil.
  3. Aktualisiere Titel, Bild oder Einstellungen aus dem Action-Event.
  4. Füge einen Property Inspector nur hinzu, wenn die Action Nutzerkonfiguration braucht.
  5. Führe streamdeck validate vor dem Packen aus.
  6. Führe streamdeck pack *.sdPlugin aus, wenn das Plugin distributionsbereit ist.

6. Verzeichniskarte​

docs/tools/streamdeck/
├── index.mdx
├── architecture-and-sdk-map.mdx
├── javascript-typescript-plugins.mdx
├── python-hid-automation.mdx
├── dotnet-native-plugins.mdx
├── manifest-property-inspector.mdx
├── packaging-distribution.mdx
└── troubleshooting-checklist.mdx

7. Wichtigste Referenzen​