Workflows ermöglichen es Nutzerinnen und Nutzern, eine Abfolge von Schritten zu definieren, um Cascade durch wiederkehrende Aufgaben zu führen, etwa beim Deployment eines Dienstes oder beim Beantworten von PR-Kommentaren. Diese Workflows werden als Markdown-Dateien gespeichert und bieten Nutzerinnen, Nutzern und ihren Teams eine einfache, wiederholbare Möglichkeit, zentrale Prozesse auszuführen. Nach dem Speichern können Workflows in Cascade über einen Slash-Befehl im Format /[name-of-workflow] aufgerufen werden.

Funktionsweise

Regeln geben großen Sprachmodellen in der Regel Orientierung, indem sie auf Prompt-Ebene einen persistenten, wiederverwendbaren Kontext bereitstellen. Workflows erweitern dieses Konzept, indem sie auf Trajektorienebene eine strukturierte Abfolge von Schritten oder Prompts vorgeben und das Modell durch eine Reihe miteinander verknüpfter Aufgaben oder Aktionen führen.
Um einen Workflow auszuführen, rufen Nutzer ihn einfach in Cascade mit dem Befehl /[workflow-name] auf.
Sie können andere Workflows innerhalb eines Workflows aufrufen!

Beispielsweise kann /workflow-1 Anweisungen wie „Rufe /workflow-2 auf“ und „Rufe /workflow-3 auf“ enthalten.
Nach dem Aufruf verarbeitet Cascade jeden im Workflow definierten Schritt der Reihe nach und führt dabei die angegebenen Aktionen aus oder generiert entsprechende Antworten.

So erstellen Sie einen Workflow

Um mit Workflows zu beginnen, klicken Sie im Cascade-Slider-Menü oben rechts auf das Symbol Customizations und navigieren Sie anschließend zum Panel Workflows. Dort können Sie auf die Schaltfläche + Workflow klicken, um einen neuen Workflow zu erstellen. Workflows werden als Markdown-Dateien in Verzeichnissen unter .windsurf/workflows/ gespeichert und enthalten einen Titel, eine Beschreibung sowie eine Abfolge von Schritten mit konkreten Anweisungen, denen Cascade folgen soll.

Workflow-Erkennung

Windsurf erkennt Workflows automatisch aus mehreren Quellen, um eine flexible Organisation zu ermöglichen:
  • Aktueller Workspace und Unterverzeichnisse: Alle .windsurf/workflows/-Verzeichnisse innerhalb Ihres aktuellen Workspace und seiner Unterverzeichnisse
  • Git-Repository-Struktur: Bei Git-Repositories durchsucht Windsurf zusätzlich bis zum Git-Root-Verzeichnis, um Workflows in übergeordneten Verzeichnissen zu finden
  • Unterstützung mehrerer Workspaces: Sind mehrere Ordner im selben Workspace geöffnet, werden Workflows dedupliziert und mit dem kürzesten relativen Pfad angezeigt

Speicherorte für Workflows

Workflows können an den folgenden Orten gespeichert werden:
  • .windsurf/workflows/ im Verzeichnis Ihres aktuellen Workspace
  • .windsurf/workflows/ in einem beliebigen Unterverzeichnis Ihres Workspace
  • .windsurf/workflows/ in übergeordneten Verzeichnissen bis zum Git-Root (für Git-Repositories)
Wenn Sie einen neuen Workflow erstellen, wird er im Verzeichnis .windsurf/workflows/ Ihres aktuellen Workspace gespeichert – nicht zwingend im Git-Root. Workflow-Dateien sind jeweils auf 12 000 Zeichen begrenzt.

Einen Workflow mit Cascade erstellen

Sie können Cascade auch bitten, Workflows für Sie zu erstellen! Das funktioniert besonders gut für Workflows, die eine Abfolge von Schritten in einem bestimmten CLI-Tool umfassen.

Beispiel-Workflows

Es gibt zahlreiche Anwendungsfälle für Workflows, zum Beispiel:

/address-pr-comments

Dies ist ein Workflow, den unser Team intern verwendet, um PR-Kommentare zu bearbeiten:
1. Checke den PR-Branch aus: `gh pr checkout [id]`

2. Kommentare zum PR abrufen

 bash
 gh api --paginate repos/[owner]/[repo]/pulls/[id]/comments | jq '.[] | {user: .user.login, body, path, line, original_line, created_at, in_reply_to_id, pull_request_review_id, commit_id}'

3. Für JEDEN Kommentar das Folgende tun. Denke daran, jeweils nur einen Kommentar zu bearbeiten.
 a. Gib Folgendes aus: "(index). Von [user] zu [file]:[lines] — [body]"
 b. Analysiere die Datei und den Zeilenbereich.
 c. Wenn du den Kommentar nicht verstehst, nimm keine Änderung vor. Bitte mich stattdessen um Klarstellung oder darum, es selbst umzusetzen.
 d. Wenn du die Änderung vornehmen kannst, tue das, BEVOR du zum nächsten Kommentar übergehst.

4. Nachdem alle Kommentare bearbeitet wurden, fasse zusammen, was du getan hast und welche Kommentare die Aufmerksamkeit des USERS erfordern.

/git-workflows

Committe mit vordefinierten Formaten und erstelle Pull Requests mit standardisiertem Titel und standardisierten Beschreibungen über die entsprechenden CLI-Befehle.

/dependency-management

Automatisiere die Installation oder Aktualisierung von Projektabhängigkeiten auf Basis einer Konfigurationsdatei (z. B. requirements.txt, package.json).

/code-formatting

Führe automatisch Code-Formatter (wie Prettier, Black) und Linter (wie ESLint, Flake8) beim Speichern oder vor dem Commit aus, um den Codestil einzuhalten und Fehler frühzeitig zu erkennen.

/run-tests-and-fix

Führe Unit- oder End-to-End-Tests aus oder füge sie hinzu und behebe Fehler automatisch, um die Codequalität vor dem Committen, Mergen oder Deployen sicherzustellen.

/deployment

Automatisiere die Schritte zum Deployment deiner Anwendung in verschiedene Umgebungen (Development, Staging, Production), einschließlich erforderlicher Vorabprüfungen und nachgelagerter Verifikationen.

/security-scan

Integriere Sicherheits-Scans auf Schwachstellen in deinem Codebestand und triggere sie im Rahmen der CI/CD-Pipeline oder bei Bedarf.