Knoten
Der Knotenkatalog umfasst 36 Knotentypen, verteilt auf die drei Reiter der Palette: Triggers, Actions (einschließlich Design- und KI-Aktionen) und Rules (Logik, Timing und Ablaufsteuerung). Jeder Knoten ist vollständig konfigurierbar und wird in dem Moment geprüft, in dem du ihn platzierst. Manche Aktionsknoten laufen bereits echt; einige stehen im Katalog, bevor ihr Executor fertig ist, und protokollieren ehrlich einen "noch nicht angebunden"-Schritt, statt einen Erfolg vorzutäuschen (siehe die Spalte When run unten).
Kurzüberblick
- Öffne den Palettenreiter, der zu deinem Vorhaben passt: Triggers, Actions oder Rules.
- Ziehe den Knoten auf die Arbeitsfläche.
- Konfiguriere seine Felder im Inspektor.
- Prüfe die Tabellen unten, bevor du dich auf die reale Wirkung eines Aktionsknotens verlässt.
Ausführliche Referenz
Auslöser
Genau ein Auslöserknoten startet einen Graphen. Unter Auslöser erfährst du, wie jeder einzelne tatsächlich auslöst.
| Node | Was eine Ausführung startet |
|---|---|
| Manual start | Du, über die Schaltfläche Test im Builder |
| Scheduled | Ein Intervall, ein täglicher oder wöchentlicher Rhythmus |
| Incoming webhook | Ein Aufruf der eigenen URL der Automatisierung |
| Design created | Ein neues Design wird angelegt |
| Design updated | Ein Design wird gespeichert |
| Design shared | Ein Design wird geteilt oder veröffentlicht |
| Design downloaded | Ein Design wird heruntergeladen |
| Part tagged | Ein Tag wird zu einem Bestandteil hinzugefügt, optional auf ein einzelnes Tag gefiltert |
| Brand applied | Ein Markenset wird auf ein Design angewendet |
| Asset uploaded | Eine Datei wird zur Medienbibliothek hinzugefügt |
| AI generation done | Eine KI-Generierung ist abgeschlossen |
| New work in folder | Ein Projekt wird zu einem gewählten Ordner hinzugefügt |
Design-Aktionen
| Node | Was er tut | Felder | When run |
|---|---|---|---|
| Pick a part | Wähle ein Projekt und darin einen Bestandteil (Seite, Rahmen oder Folie); spätere Schritte wirken darauf | Part (öffnet die Bestandteil-Auswahl) | Läuft echt |
| Set status / folder | Ändert den Status des Designs und/oder verschiebt es in einen Ordner | Status, Folder | Läuft echt |
| Publish a part | Veröffentlicht den gewählten Bestandteil als Community-Vorlage | keine | Noch nicht angebunden |
| Duplicate a design | Erstellt eine Kopie des gewählten Designs | keine | Noch nicht angebunden |
| Generate a cover | Erzeugt ein Cover oder Thumbnail für den gewählten Bestandteil | keine | Noch nicht angebunden |
KI-Aktionen
Läuft über deinen eigenen KI-Anbieter-Schlüssel, denselben, den die App auch anderswo nutzt; siehe Bring deinen eigenen KI-Schlüssel mit.
| Node | Was er tut | Felder | When run |
|---|---|---|---|
| Generate copy | Schreibt Text mit einem LLM | KI-Einstellungen (vom Knoten aus geöffnet) | Läuft echt mit jedem verbundenen KI-Schlüssel; andernfalls wird ein übersprungener Schritt protokolliert |
| Generate an image | Text zu Bild | KI-Einstellungen (vom Knoten aus geöffnet) | Läuft echt mit einem OpenAI-kompatiblen Schlüssel; jeder andere Anbieter oder kein Schlüssel führt zu einem protokollierten übersprungenen Schritt |
| Generate a video | Text zu Video | KI-Einstellungen (vom Knoten aus geöffnet) | Protokolliert heute immer einen übersprungenen Schritt; Video ist noch mit keinem Anbieter verbunden, auch mit konfiguriertem Schlüssel |
| Run an AI skill | Führt einen AI-Studio-Skill aus | KI-Einstellungen (vom Knoten aus geöffnet) | Wie Generate an image bei einem bilderzeugenden Skill; ein videoerzeugender Skill protokolliert immer einen übersprungenen Schritt |
Benachrichtigungs-Aktionen
| Node | Was er tut | Felder | When run |
|---|---|---|---|
| In-app notification | Erstellt eine Benachrichtigung in deinem Arbeitsbereich | Message | Läuft echt |
| Send webhook | Sendet eine POST-Anfrage an eine URL | URL | Läuft echt |
| Slack / Discord | Postet eine Nachricht über einen Incoming Webhook | Webhook URL, Message | Läuft echt |
| Write an audit entry | Fügt eine Zeile zum Audit-Log hinzu | keine | Läuft echt |
| Send email | Versendet eine E-Mail | To, Subject, Body | Läuft echt über die konfigurierte SMTP-Verbindung deines Arbeitsbereichs; ohne eine solche wird ein übersprungener Schritt protokolliert |
| Add to calendar | Fügt dem Arbeitsbereichs-Kalender einen Termin hinzu | Title | Läuft echt; er landet im Aktivitäts-Feed deines Portal-Kalenders |
Regeln und Logik
Jeder Knoten hier wird direkt von der Kern-Engine verarbeitet, daher laufen sie alle echt.
| Node | Was er tut | Felder |
|---|---|---|
| Condition (yes/no) | Teilt den Ablauf anhand einer Bedingung in zwei Zweige | Condition |
| Filter | Stoppt den Ablauf, wenn eine Bedingung nicht erfüllt ist | Condition |
| Delay | Wartet, bevor es weitergeht | Amount, Unit (Minute, Stunde, Tag) |
| Wait until a date | Wartet bis zu einem bestimmten Datum und Uhrzeit | Date |
| Set a variable | Schreibt einen Wert in den Kontext der Ausführung für spätere Schritte | Key, Value |
| Expression / template | Baut aus früheren Ausgaben einen Wert zusammen | Template |
| HTTP request | Ruft eine URL auf und speichert die Antwort | URL, Method, Body |
| No-op | Tut nichts; ein Durchleitungsschritt | keine |
| Exit | Beendet die Automatisierung | keine |
Vorlagen und Bedingungen
Die meisten Text- und Textbereichsfelder, der Knoten Expression / template und mehrere Benachrichtigungsfelder akzeptieren Platzhalter in doppelten geschweiften Klammern, geschrieben als {{ context.someKey }}, die auf das zugreifen, was frühere Knoten in die Ausführung geschrieben haben, zum Beispiel den von dir gewählten Bestandteil oder einen Block KI-generierten Texts.
Condition (yes/no) und Filter bauen stattdessen eine strukturierte Regel: Wähle ein Feld, einen Vergleich (gleich, enthält, beginnt mit, größer als, ist leer und mehr, je nach Datentyp des Felds) und einen Wert. Beide Seiten der Regel können den Kontext der Ausführung auf dieselbe Weise referenzieren, etwa indem {{ context.status }} mit einem festen Wert wie approved verglichen wird. Eine leere Regel ist immer erfüllt, weshalb ein brandneuer Condition- oder Filter-Knoten alles durchlässt, bis du ihn konfigurierst.
So verwendest du es
Schritt für Schritt: einen HTTP-Request-Schritt konfigurieren
- Ziehe HTTP request aus dem Reiter Rules auf die Arbeitsfläche und verbinde ihn hinter dem Knoten, der die zu sendenden Daten erzeugt.
- Setze Method (GET, POST, PUT, PATCH oder DELETE) und URL; das URL-Feld akzeptiert
{{ context.x }}genau wie jedes Textfeld. - Wähle Auth: None, Bearer token, Basic (
user:pass) oder einen Custom Header, und fülle das passende Wertfeld aus, das erscheint. - Wähle bei einer Methode mit Body einen Body type (JSON, form oder raw text) und schreibe den Body, wieder mit Platzhaltern, wo du sie brauchst.
- Belasse Response variable auf dem Standard
__httpoder benenne sie um, und referenziere das Ergebnis dann weiter unten, zum Beispiel{{ context.__http.status }}oder einen Wert innerhalb von{{ context.__http.body }}.
Schritt für Schritt: einen Slack- oder Discord-Kanal benachrichtigen
- Erstelle in der Ziel-App einen Incoming Webhook für den Kanal, in den du posten möchtest, und kopiere dessen URL.
- Ziehe Slack / Discord auf die Arbeitsfläche (Actions > Notification) und füge diese URL in Webhook URL ein.
- Schreibe die Message und nutze
{{ context.x }}, um alles einzubinden, was frühere Knoten erzeugt haben. - Setze optional Username und Icon emoji, damit automatisierte Posts in einem lebhaften Kanal leicht zu erkennen sind.
- Teste die Automatisierung einmal; ein fehlgeschlagener Post erscheint als
error-Schritt mit angehängtem HTTP-Status, nicht als stilles No-op.
Häufige Aufgaben
- Jeden Werktagmorgen auslösen. Setze bei einem Scheduled-Auslöser Frequency auf Cron, den Ausdruck auf
0 9 * * 1-5und eine Zeitzone wieEurope/Istanbul. Der Cron-Modus führt einen Nachhol-Zeiger, sodass eine verpasste Minute (ein Deploy, ein Kaltstart) noch einmal auslöst, sobald sie aufgeholt ist, statt still verloren zu gehen. - Nur signierte Webhook-Aufrufe akzeptieren. Trage das HMAC-Secret des Incoming webhook-Auslösers ein; der Aufrufer muss dann einen Header
X-Signature: sha256=...senden, der über den rohen Body berechnet wird, sonst wird der Aufruf mit einem 401 abgelehnt, bevor irgendetwas läuft. - Einen Bestandteil nach Freigabe zur Prüfung verschieben. Verkette Pick a part mit Set status / folder und setze Status auf "İncelemede" (In Prüfung); es nutzt denselben Aktualisierungspfad wie die Statussteuerung des Editors selbst.
- Eine Bildunterschrift oder Zusammenfassung entwerfen. Der Prompt eines Generate copy-Knotens kann direkt auf früheren Kontext verweisen, zum Beispiel
Summarize this in one sentence: {{ context.__aiText }}, verkettet hinter einem anderen KI-Schritt. - Eine externe API aufrufen und auf die Antwort reagieren. Ein HTTP request-Knoten (Reiter Rules) kann Bearer-/Basic-/Custom-Header-Auth setzen, seine Antwort in eine Variable schreiben (Standard
__http), und ein direkt nachfolgender Filter-Knoten kann anhand dieser Antwort abriegeln, etwa nur weiterlaufen, wenn der Aufruf erfolgreich war. - Einen ausgehenden Webhook signieren. Wird das Feld Secret der Aktion Webhook gönder (Send webhook) ausgefüllt, signiert es den Anfrage-Body per HMAC-SHA256 und sendet die Signatur in dem unter Signature header genannten Header (Standard
X-Signature), sodass die empfangende Seite prüfen kann, dass der Aufruf tatsächlich von deiner Automatisierung stammt. - Mehrere Kontextwerte zu einer Zeichenkette zusammenfügen. Nutze Expression / template statt mehrerer Set a variable-Knoten, zum Beispiel
{{ context.name }} <{{ context.email }}>einmal in sein Feld Template geschrieben, und referenziere das Ergebnis dann weiter unten als{{ context.__expr }}. - Eine Benachrichtigung mit dem zugehörigen Werk verknüpfen. Das Feld Href von In-app notification akzeptiert einen Pfad wie
/works/<id>, sodass ein Klick auf die Benachrichtigung im Arbeitsbereich dein Team direkt zum betroffenen Projekt führt. - Eine Ausführung frühzeitig beenden, ohne dass sie als Fehler zählt. Verkette einen Filter-Knoten mit einer Regel, die für die Fälle falsch ist, die du verwerfen möchtest; eine ausgefilterte Ausführung erscheint in Runs als Exited, nicht als Failed, und nichts nach dem Filter läuft.
Fehlerbehebung
- Der Schritt eines Knotens zeigt
skippedin Activity. Das ist entweder ein gewollter Filter (ein Filter-Knoten, dessen Bedingung nicht erfüllt war), ein Knoten, dessen Executor wirklich noch nicht angebunden ist (siehe die "When run"-Spalten oben), oder eine Aktion, die noch nichts hat, worauf sie wirken könnte (E-Mail ohne SMTP-Verbindung, KI ohne passenden Schlüssel). Keiner dieser Fälle ist ein Fehler; die Ausführung setzt trotzdem mit dem fort, was danach kommt. - Ein Aktionsknoten scheitert wiederholt am selben Schritt. Öffne im Inspektor den Reiter Settings und setze einen Retry count samt Wartezeit, oder ändere On error auf Continue, damit der Rest des Graphen dennoch läuft; siehe Einen Workflow bauen.
- Meine Bedingung scheint nie erfüllt (oder nie fehlzuschlagen). Prüfe, ob das gelesene Feld tatsächlich zu etwas auflöst: Ein Tippfehler in einem
{{ context.x }}-Pfad oder ein vorgelagerter Knoten, der selbst übersprungen wurde, lassen den Wert leer, und die meisten Vergleiche außer "ist leer" scheitern gegen einen leeren Wert. - Eine Ausführung ist gar nicht erst gestartet. Das ist eine Frage auf Auslöserebene, keine Knotenfrage; siehe Auslöser zu Debounce, Ruhezeiten und Stolperfallen beim Active-Status.
- Set status / folder protokolliert "önce bir parça seç" (erst einen Bestandteil wählen) und überspringt. Dieser Knoten wirkt auf den Bestandteil, den ein Pick a part-Knoten zuvor in derselben Ausführung gewählt hat. Ohne einen solchen davor im Graphen gibt es nichts, worauf er wirken könnte, also überspringt er immer mit dieser Meldung.
- "Publish a part", "Duplicate a design" oder "Generate a cover" scheinen nie etwas zu tun. Diese drei Design-Aktionen stehen noch vor ihrem Executor; sie protokollieren immer einen übersprungenen Schritt und leiten durch, genau wie ein KI- oder E-Mail-Knoten, dessen Abhängigkeit nicht konfiguriert ist. Nichts, was du an ihnen einstellst, ändert das heute.
- Ein Slack-Post oder ein ausgehender Webhook kam still nicht an. Prüfe zuerst seinen Eintrag in Recent step logs. Eine falsche oder abgelaufene Incoming-Webhook-URL oder ein Ziel, das einen Nicht-2xx-Status zurückgab, erscheinen beide als
error-Schritt mit dem Antwortstatus in der Meldung, nicht als verstecktes Scheitern.
Tipps
Skipped ist nicht kaputt
Ein mit "noch nicht angebunden" markierter Knoten ist kein Fehler. Die Ausführung leitet trotzdem durch ihn hindurch, protokolliert einen ehrlichen "skipped"-Schritt und geht weiter zum nächsten Knoten, sodass der Rest deines Graphen weiterhin funktioniert, während du auf den Executor dieses Knotens wartest.
Condition und Filter kombinieren
Nutze Condition, wenn du zwei verschiedene Pfade brauchst (ja und nein); nutze Filter, wenn du einfach eine Ausführung stoppen willst, die nicht qualifiziert ist.