Zum Hauptinhalt springen

Skript ausführen

Führen Sie ein Bash- oder PowerShell-Skript auf dem Server des AI Kit aus.

Funktionsweise​

Die Integration führt eine Skriptdatei aus, die bereits im Dateisystem des Servers liegt, und übergibt ihr auf Wunsch Argumente. Sie erfasst stdout und stderr getrennt und schreibt beides in den Speicher. Das ist nützlich für die vielen Anbindungen, die die Plattform nicht von Haus aus mitbringt – Aufgaben der Systemadministration, Altsysteme, eigene Kommandozeilenwerkzeuge.

Zugleich ist dies die mächtigste und gefährlichste Integration im Katalog. Behandeln Sie sie wie eine geladene Waffe.

Einstellungen​

FeldWas es steuertErforderlichHinweise
SkriptpfadAbsoluter Pfad zur Skriptdatei.erforderlichDie Datei muss bereits auf dem Server liegen. Hat Ihr Administrator AIKIT_SCRIPT_ROOTS gesetzt, muss das Skript unterhalb eines dieser Verzeichnisse liegen.
SkripttypBash oder PowerShell.erforderlichLegt fest, welchen Interpreter die Plattform aufruft.
ArgumenteListe von Zeichenketten, die an das Skript übergeben werden.optionalJeder Eintrag wird zu einem Argument. Übernehmen Sie Werte bei Bedarf aus dem Speicher.
Ausgabe (optional)Wo stdout gespeichert wird.optionalErfassen Sie die Ausgabe, um sie in späteren Schritten auszuwerten oder zu protokollieren.
Fehlermeldung (optional)Wo stderr gespeichert wird.optionalErfassen Sie sie auch, wenn Sie keine Fehler erwarten – das erleichtert die Fehlersuche erheblich.

📷 SCREENSHOT: Der Schritt „Skript ausführen“ mit Pfad, Auswahl des Skripttyps und Argumentliste.

Beispielszenario​

Einen alten Bericht anstoßen. Ein per Cron ausgelöster Workflow soll ein 15 Jahre altes Berichtswerkzeug ausführen. Das Werkzeug wird als Bash-Skript auf demselben Server aufgerufen. Ein Schritt „Skript ausführen“ ruft das Skript auf; seine Standardausgabe wird erfasst und an eine KI-Aktion weitergegeben, die den Bericht für die Team-Mail zusammenfasst.

Empfehlungen​

  • ✅ Halten Sie Skripte nach Möglichkeit idempotent – zweimaliges Ausführen desselben Skripts sollte unbedenklich sein.
  • ✅ Verwenden Sie im Skript explizite Pfade. Verlassen Sie sich nicht auf das Arbeitsverzeichnis, das die Plattform gerade verwendet.
  • ✅ Erfassen Sie stderr auch dann, wenn alles glattläuft. Das ist die mit Abstand größte Hilfe bei der Fehlersuche, wenn sich ein Skript unerwartet verhält.
  • ✅ Legen Sie alle Skripte in ein eigenes Verzeichnis, auf das die Plattform nur lesend zugreift, und geben Sie mit AIKIT_SCRIPT_ROOTS nur dieses Verzeichnis frei. So lassen sich die Skripte leicht prüfen.
  • ✅ Argumente werden unverändert an das Skript übergeben, ohne Shell dazwischen – Anführungszeichen oder ; in einem Argument sind Daten, keine Befehle. Skripte werden nach AIKIT_SCRIPT_TIMEOUT_SEC Sekunden beendet (Standard: 300).
  • ⚠️ Argumente werden als einzelne Zeichenketten übergeben, nicht zu einer Befehlszeile zusammengesetzt. Übliches Shell-Quoting ist daher unnötig – wer Werte trotzdem maskiert („escaped“), maskiert sie womöglich doppelt.
  • ❌ Setzen Sie Skriptpfade nicht zur Laufzeit aus dem Speicher zusammen. Das ist Path Injection. Tragen Sie den Pfad fest ein.
  • ❌ Verwenden Sie im Skript keine für Shell-Injection anfälligen Konstrukte (bash -c "$user_input"). Behandeln Sie alle Argumente als Daten, nie als Code.
  • ❌ Nutzen Sie diese Integration nicht für Programme, die interaktive Eingaben erwarten. Die Plattform stellt kein TTY bereit.

Nächste Schritte​