
# Workflows und Aufträge

Ein **Workflow** ist eine Kette von Schritten, die Ihre Agenten für Sie
ausführen: jeden Morgen die neuen Nachrichten eines Kontexts lesen und eine
Zusammenfassung posten, eingehende Dokumente lesen und die Daten
herausziehen, auf einen Webhook aus einem anderen System antworten. Sie
bauen ihn einmal in SweetHive, danach läuft er von selbst.

Workflows laufen **auf Ihren eigenen Computern**, nicht in der Cloud: auf
Ihrem [SweetHive Agents Node](agents-node) oder auf dem
[Agents Server](agents-server) Ihres Unternehmens. Die KI-Modelle, die
Dokumente und die verarbeiteten Daten bleiben auf diesen Rechnern.

Alles, was für Sie läuft, steht unter **My agents, Aufträge**: Ihre Workflows
und die Anfragen von SweetHive-Apps (zum Beispiel SweetTimetable, das Ihre Belege
liest, oder SweetReach, das ein Video rendert).

## Einen Workflow erstellen

1. Öffnen Sie **My agents** und wählen Sie den Tab **Workflows**.
2. Klicken Sie auf **Neuer Workflow**. Der Editor öffnet sich mit einer
   Arbeitsfläche:
   - links die Liste der **Schritte**, die Sie hinzufügen können;
   - in der Mitte die **Arbeitsfläche** mit Ihren Schritten und den
     Verbindungen zwischen ihnen;
   - rechts die **Einstellungen** des ausgewählten Schritts.
3. Klicken Sie auf einen Schritt in der Liste, um ihn nach dem ausgewählten
   einzufügen. Um zwei Schritte zu verbinden, ziehen Sie vom Punkt rechts an
   einem Schritt zu einem anderen Schritt.
4. Wählen Sie den **Agenten**, mit dem der Workflow läuft (obere Leiste).
   Schritte, die in Ihren Hives lesen oder posten, nutzen diesen Agenten -
   der Workflow sieht also nie mehr, als der Agent sehen darf.
5. **Speichern** Sie. Jede Änderung an den Schritten speichert eine neue
   Version; bereits gestartete Ausführungen behalten die Version, mit der sie
   begonnen haben.
6. Klicken Sie auf **Ausführen**, um ihn zu testen: Jeder Schritt auf der
   Arbeitsfläche zeigt seinen Status live (wartet, läuft, erledigt,
   fehlgeschlagen) und, sobald er fertig ist, sein Ergebnis.

## Wann ein Workflow startet

Wählen Sie den ersten Schritt (den Auslöser), um festzulegen, wie der
Workflow startet:

- **Manuell** - wenn Sie auf Ausführen klicken, im Editor oder in der
  Workflow-Liste.
- **Geplant** - zu festen Zeiten: jede Stunde, jeden Tag um 8:00, Montag bis
  Freitag um 9:00 oder nach einem beliebigen selbst geschriebenen Zeitplan
  (cron) in Ihrer Zeitzone.
- **Hive-Ereignis** - wenn es in einem Hive eine neue Nachricht, Datei,
  Aufgabe, einen neuen Termin oder eine neue E-Mail gibt (wahlweise nur in
  einem Kontext).
- **Webhook** - wenn ein anderes System die URL des Workflows aufruft. Das
  Geheimnis wird nur einmal angezeigt: Kopieren Sie es beim Erstellen.
- **App-Ereignis** - wenn eine verbundene App ein Ereignis auslöst (zum
  Beispiel ein neuer Lead in SweetCRM).

Mit dem Schalter **Aktiv** können Sie einen Workflow jederzeit pausieren.

## Die Schritte

| Gruppe | Schritte |
|---|---|
| SweetHive | **Kontext lesen** (Nachrichten, Dateien, Aufgaben eines Kontexts), **Im Kontext posten** |
| KI auf Ihrem Computer | **Text generieren**, **Daten extrahieren** (aus Text strukturierte Daten), **Dokument lesen** (aus PDFs, Scans und Fotos Text und Daten), **Video erstellen** |
| Integrationen | **HTTP-Anfrage** (nur https; private Netzwerke sind gesperrt) |
| Daten | **Werte setzen**, **Liste umwandeln**, **Liste filtern** |
| Ablauf | **Wenn** (zwei Zweige), **Verzweigen** (ein Zweig pro Fall), **Warten** |

Ein Schritt kann die Ergebnisse der vorherigen verwenden. Fügen Sie in jedem
Textfeld eine Variable über die Schaltflächen unter den Einstellungen ein,
zum Beispiel `{{ $steps.summary.output.text }}` (der vom Schritt *summary*
generierte Text) oder `{{ $trigger }}` (was den Workflow gestartet hat). Sie
müssen keinen Code schreiben.

## Wo die Schritte laufen

Jeder Schritt läuft auf einem Ihrer Computer:

- standardmäßig bleibt er auf **demselben Computer wie der vorherige
  Schritt** (das Modell ist schon geladen, die Dateien sind schon da);
- er wechselt auf **einen anderen Computer**, wenn er etwas braucht, das der
  erste nicht hat: ein Modell, das Bilder sieht, einen größeren Kontext,
  einen Render-Worker. Sie können einen Schritt auch auf **jedem verfügbaren
  Computer** laufen lassen (*Wo er läuft* in seinen Einstellungen).

Wenn gerade keiner Ihrer Computer einen Schritt ausführen kann, wartet der
Auftrag und sagt Ihnen, warum (zum Beispiel *Wartet auf einen deiner
Computer: öffne SweetHive Agents Node, dann startet er von selbst*). Er
startet von selbst, sobald ein geeigneter Computer online ist.

## Ihre Aufträge verfolgen

**My agents, Aufträge** listet, was gerade läuft und was gelaufen ist, das
Neueste zuerst. Jeder Auftrag zeigt, wer ihn gestartet hat (ein Workflow oder
eine App), wie viele Schritte erledigt sind, welcher Computer ihn ausführt
und, wenn etwas schiefgeht, den Grund in einfachen Worten: Das Modell ist
nicht installiert, das Dokument ist zu lang für das Modell, der Link zur
Datei ist abgelaufen, der Computer antwortet nicht mehr.

- **Abbrechen** stoppt einen wartenden oder laufenden Auftrag.
- **Erneut versuchen** führt einen fehlgeschlagenen oder abgebrochenen
  Auftrag noch einmal aus.
- Öffnen Sie einen Auftrag, um jeden Schritt zu sehen, den verwendeten
  Computer und das Modell, die Dauer und das Ergebnis.

Liegt das Problem am Computer (ein fehlendes Modell, ein zu kleiner Kontext,
der Computer ist ausgeschaltet), verbraucht der Auftrag keine Versuche: Er
wechselt auf einen anderen Computer oder wartet. Liegt das Problem an den
Eingabedaten (ein unlesbares Dokument, eine Antwort, die das Modell nicht
richtig formatieren konnte), wird er einmal wiederholt und dann gemeldet.

Der SweetHive Agents Node zeigt dieselbe Liste in seinem Bereich
**Aufträge**: was er gerade tut und was er zuletzt getan hat.

## Datenschutz

- Ein Workflow läuft **als einer Ihrer Agenten**: Er sieht nur die Hives und
  Kontexte, die dieser Agent sehen darf, und kann nur posten, wenn dieser
  Agent posten darf.
- KI-Schritte laufen **auf Ihren Computern** mit lokalen Modellen.
- Dateien, die zwischen Schritten weitergegeben werden, bleiben 7 Tage
  gespeichert und werden dann gelöscht. Links zu Dokumenten, die von Apps
  gesendet werden, erscheinen nie in den Auftragslisten.
