Kernkonzepte
Workflow, Schritt, Agent, Modul, Ausführung, Anmeldeinformationen – was genau bedeuten diese Wörter in Braidrun?
Alle Funktionen in Braidrun – Canvas, YAML, Planung, Genehmigung, Überwachung – drehen sich um eine sehr begrenzte Reihe von Kernkonzepten. Diese Seite bringt diese Konzepte in ein Bild, damit Sie „die Koordinaten kennen, egal welchen Artikel Sie später lesen“.
einsWorkflowsist eine DAG, bestehend aus mehrerenSchritteKomponiert; Schritt kann ein LLM-Aufruf sein (usingAgent), ein Stück Code oder ein Sub-Workflow (referenziert ein Modul); auf jedem Schritt lässt sich zudem ein Genehmigungs-Gate hinzufügen. Nach dem Auslösen erzeugt ein Workflow eine Ausführungsablauf, wird zur Laufzeit referenziertAusweisZugriff auf externe Systeme.
Arbeitsablauf · Arbeitsablauf
Der Workflow ist das oberste Objekt dieser Plattform. Man kann es sich als „versionierbares Geschäftsprozessdiagramm“ vorstellen, bestehend aus:
- Ein YAML-Dokument (Definition der Struktur)
- Eine Reihe von Metadaten (Trigger, Parametervoreinstellungen, Berechtigungen, Tags)
- Mehrere frühere Ausführungsdatensätze (zur Prüfung und Fehlerbehebung)
zusammen. Ein und derselbe workflow wird in der Web-UI als DAG-Leinwand dargestellt; Leinwand und YAML sind zwei Ansichten derselben Definition. Der diff in Git ist ein normaler YAML-diff, kein chaotischer JSON-dump.
Ein Workflow lässt sich auf fünf Arten auslösen:
- Handbuch — Klicken Sie im Editor auf „Ausführen“ oder starten Sie Stapel aus der Liste.
- Zeitgesteuert — cron-Ausdruck, festes Intervall, einmaliger Zeitpunkt oder verketteter Trigger „N Sekunden nach Abschluss des vorgelagerten Workflows“.
- Webhook — Auslösung per POST durch ein externes System, Authentifizierung über API Key (kompatibel mit HMAC-Signatur).
- API — Starten Sie eine Ausführung von Ihrem eigenen System aus über den Trigger-Endpunkt der v1-API.
- Eingebettet in den übergeordneten Workflow — Wird von einem anderen Workflow über den Schritt „sub_workflow“ als Blackbox aufgerufen.
Schritt · Schritt
Schritt ist die kleinste Ausführungseinheit im Workflow. Jeder Schritt muss und kann nur einen „Hauptmodus“ auswählen:
single— Ein einzelner Agent führt eine Aufgabenbeschreibung aus. Das einfachste LLM-Aufrufprimitiv.group_chat— Mehrere Agenten diskutieren abwechselnd und beziehen sich auf den Kontext des anderen. Geeignet für Brainstorming und kritische Überprüfung.agent_based— Ein Orchestrator-Agent liest die Aufgabe und verteilt die Unteraufgaben dynamisch an den Worker-Agenten.code— 代码脚本(Python / JavaScript / TypeScript / Bash / Ruby / Lua / CLI 共 7 种),在隔离沙箱中执行。确定性 > LLM 的场景首选。classifier— Das LLM versieht die Eingabe mit einem Kategorielabel; das Ergebnis wird in die von output_variable angegebene Variable geschrieben, damit nachfolgende step über condition verzweigen können.state_machine— Mehrere Zustände + Zustandsübergangsbedingungen. Geeignet für mehrere Iterationen oder Workflows mit kleinen Prozessen.sub_workflow— Nennen Sie einen anderen Workflow als Blackbox mit Vertragsüberprüfung, Schleifenerkennung und Variablenisolierung.workflow_output_read— Liest die von der Ausführung eines anderen Workflows veröffentlichte Ausgabe (publish_outputs) und legt sie in einer lokalen Variablen ab.
Zusätzlich zum Hauptmodus kann fast jeder Schritt die folgenden allgemeinen Erweiterungsfelder überlagern:
depends_on/condition— Vorgänger-Abhängigkeiten + Überspringbedingung (condition unterstützt && und || auf oberster Ebene)manual_approval— Manuelles Genehmigungs-Gate: pausiert die Ausführung, läuft nach der Genehmigung weiterparallel/timeout_seconds— Konfiguration paralleler Ausführung / Schritt-Timeoutretry— Backoff-Wiederholungsstrategie für vorübergehende Fehlerrepeat_until/iterate_over— Schleife bis zur Erfüllung einer Bedingung / iteriert über eine Sammlung Element für Elementextract/aggregate— Wählen Sie Felder aus der Ausgabe aus / führen Sie mehrere Eingaben zusammenpublish_outputs— Veröffentlicht Schrittartefakte als benannte Ausgaben zum Konsum durch workflow_output_readidempotent— Deklariert „gleiche Eingabe → gleiche Ausgabe, keine Nebenwirkungen“; beim automatischen Fortsetzen nach einem Serviceneustart entscheidet dies, ob ab dem unterbrochenen Schritt neu gestartet werden kannon_success/on_failure— Ergänzende Maßnahmen nach Erfolg/Misserfolg (Versenden von Benachrichtigungen, Schreiben von Audits usw.)
Agent·Agent
Ein Agent kapselt „eine LLM-Sitzung + die ihm verfügbaren Tools + seine Ausführungsstrategie“. In Braidrun schreiben Sie kaum je einen system prompt direkt von Hand — wählen Sie eines der 19 integrierten preset (universal / coder / researcher / data_analyst / web_scraper / writer …) und passen Sie bei Bedarf einige Felder per overrides an.
agents:
planner:
preset: universal # 选一个基线模板
analyst:
preset: data_analyst
overrides: # 按需覆盖
llm_config:
temperature: 0.2
tool_set: [file_system, csv, database]Auf einen Agenten kann in mehreren Schritten verwiesen werden. Bei jeder Schrittausführung wird eine neue Sitzungsinstanz geöffnet (kein String-Speicher). Siehe Details Detaillierte Erläuterung der Agentenkonfiguration.
Modul · Modul
Ein Modul ist ein „Workflow, der WorkflowModuleContract deklariert“ – also ein wiederverwendbarer Workflow, der den Ein-/Ausgabevertrag offenlegt und von anderen Workflows über sub_workflow aufgerufen werden kann.
Der vom Modul gebrachte Wert:
- Typisierte + Feldebene-Vertragsüberprüfung, es gibt keine „alle nachgelagerten Probleme, wenn das Feld geändert wird“
- Black-Box-Ausführung – der Aufrufer kann die internen Schritte nicht sehen und die interne Logik kann sich unabhängig weiterentwickeln
- Doppelte Schleifenerkennung zur Laufzeit + Release-Zeit, um zu vermeiden, dass „A auf B verweist und B auf A“
- Klicken Sie in der Modulbibliothek mit einem Klick auf Heraufstufen (einen Schritt in ein Modul extrahieren)/Herabstufen (das Modul in einen Inline-Schritt wiederherstellen).
Die Modulbibliothek bringt 120+ integrierte Module mit (Plattform-Login, Zeitfensterberechnung, ASA-Report-Abruf, Excel-Report, Slack-Zustellung usw.), Details siehe Integrierte Modulbibliothek;Erstellen Sie Ihr eigenes Modul siehe Modularisierung und Wiederverwendung.
Ausführung·Ausführung
Die Ausführung ist eine bestimmte laufende Instanz eines Workflows. Sein Lebenszyklus ist eine Zustandsmaschine:
PENDING → RUNNING → COMPLETED / FAILED / CANCELLED / INTERRUPTED
Trifft die Ausführung auf ein Genehmigungs-Gate, bleibt sie im Status „Warten auf Genehmigung“ stehen und setzt die Zustandsmaschine nach der Entscheidung fort.
Jede Ausführung hat:
- Triggerquelle (manual/schedule/webhook/api/sub_workflow)
- Startzeit, Endzeit, insgesamt benötigte Zeit, benötigte Zeit pro Schritt
- Alle Schritt-Eingabe-/Ausgabe-/Zwischenereignisse (SSE-Ereignisstrom)
- Kumulierter Token/Kosten
- Liste der generierten Artefakte
Bei einem unerwarteten Serviceneustart werden laufende execution als INTERRUPTED markiert. Nach Aktivierung von recovery.autoResumeOnRestart kann ab dem unterbrochenen Schritt automatisch fortgesetzt werden, Details siehe Auto-Resume nach Service-Neustart.
Anmeldeinformationen · Anmeldeinformationen
Anmeldeinformationen sind die einheitliche Speicherung vertraulicher Informationen wie „API-Schlüssel, Webhook-Geheimnis, OAuth-Token“. Alle Werte werden AES-256-GCM-verschlüsselt und serverseitig gespeichert. Einmal geschrieben, können sie nicht mehr zurückgelesen (nur überschrieben oder gelöscht) werden.
Die Parsing-Links werden der Reihe nach durchsucht und der erste Treffer wird wirksam:
- Der persönliche Namespace des aktuellen Benutzers
- Der Namespace des Benutzerteams
- System-Namespace (vom Administrator konfigurierter öffentlicher Schlüssel)
Agenten-/Codeschritte werden bei Bedarf zur Laufzeit analysiert, nie in Protokolle geschrieben, erscheinen nicht in YAML-Exporten und sind für andere Schritte des Aufrufers nicht sichtbar.
Fertigkeit/Werkzeug · fertigkeiten und Werkzeuge
„Hände“ des Agenten – Funktionen, die während der LLM-Inferenz aufgerufen werden können. In drei Kategorien unterteilt:
- Integriertes Toolset — file_system / shell / web / browser / code_execution Warten Sie, es wird standardmäßig mit der Voreinstellung verknüpft.
- MCP Erweiterungstools — Jedes vom MCP-Server bereitgestellte Tool kann registriert werden.
- Skill-Markt — Wählen Sie im „Skill Market“ einen veröffentlichten Skill aus und aktivieren Sie ihn mit einem Klick.
Variablen und Ausdrücke
Alle dynamischen Werte werden durch doppelte geschweifte Klammern übergeben {{ ... }} referenzieren. Drei Schreibweisen:
{{var:name}}— workflow-Variable auf oberster Ebene{{steps.plan.output}}— Ausgabe eines vorgelagerten Schritts (empfohlene voll qualifizierte Form){{plan}}— Nackte Form: zuerst die Ausgabe nach Schrittname suchen, dann den Wert nach Variablennamen
Das Klassifikationsergebnis des classifier wird in die von seinem output_variable angegebene Variable geschrieben; nachgelagerte Schritte entscheiden per condition über den Zweig. Zugangsdaten laufen nicht über Template-Variablen: Sie werden zur Laufzeit nach provider aus dem Credential-Center aufgelöst und injiziert; die von einem code-Schritt bezogenen Variablen werden als Umgebungsvariablen WF_VAR_* injiziert.
Die vollständige Syntax (JSONPath, Filter, Bedingungsausdrücke) finden Sie unter Variablen und Ausdrücke.
Setze sie in einem Bild zusammen
┌──────────── Workflow ────────────┐
│ │
Trigger→─────► Step 1 (single, agent=A) ◄─── Credential (解析给 A)
│ │ │
│ ▼ │
│ Step 2 (classifier) │
│ │ │
│ ┌─────┴─────┐ │
│ ▼ ▼ │
│ Step 3 Step 4 (sub_workflow ──► Module)
│ (code) │ │
│ ▼ │
│ manual_approval 门控 │
│ │ │
└──────────────┴──► Execution (记录状态 / 产物 / token / cost)Sie wissen bereits, wo Sie suchen müssen
- Praktischer Kampf: der erste Arbeitsablauf — Fügen Sie die oben genannten Konzepte in einen echten Arbeitsablauf ein
- 8 Schrittarten — Eine maßgebliche Referenz zum Hauptmodus
- Variablen und Ausdrücke — Verketten Sie Daten zwischen Schritten
- Glossar — Wenn Sie andere Dokumente lesen und auf neue Wörter stoßen, schauen Sie noch einmal nach