Sim

Block-Schemas

Vollständige YAML-Schema-Referenz für alle Sim-Blöcke

Dieser Abschnitt enthält die vollständigen YAML-Schema-Definitionen für alle verfügbaren Blocktypen in Sim. Jeder Blocktyp hat spezifische Konfigurationsanforderungen und Ausgabeformate.

Kernblöcke

Dies sind die wesentlichen Bausteine für die Erstellung von Workflows:

Logik & Kontrollfluss

Blöcke zur Implementierung von bedingter Logik und Kontrollfluss:

Integrationsblöcke

Blöcke zur Verbindung mit externen Diensten und Systemen:

Erweiterte Blöcke

Spezialisierte Blöcke für komplexe Workflow-Muster:

Gemeinsame Schema-Elemente

Alle Blöcke teilen diese gemeinsamen Elemente:

Grundstruktur

block-id:
  type: <block-type>
  name: <display-name>
  inputs:
    # Block-specific configuration
  connections:
    # Connection definitions

Verbindungstypen

  • success: Zielblock für erfolgreiche Ausführung
  • error: Zielblock für Fehlerbehandlung (optional)
  • conditions: Mehrere Pfade für bedingte Blöcke

Umgebungsvariablen

Verwende doppelte geschweifte Klammern für Umgebungsvariablen:

inputs:
  apiKey: '{{API_KEY_NAME}}'
  endpoint: '{{SERVICE_ENDPOINT}}'

Blockreferenzen

Referenziere andere Blockausgaben mit dem Blocknamen in Kleinbuchstaben:

inputs:
  userPrompt: <blockname.content>
  data: <functionblock.output>
  originalInput: <start.input>

Validierungsregeln

Alle YAML-Blöcke werden anhand ihrer Schemas validiert:

  1. Pflichtfelder: Müssen vorhanden sein
  2. Typvalidierung: Werte müssen den erwarteten Typen entsprechen
  3. Enum-Validierung: Zeichenkettenwerte müssen aus erlaubten Listen stammen
  4. Bereichsvalidierung: Zahlen müssen innerhalb festgelegter Bereiche liegen
  5. Mustervalidierung: Zeichenketten müssen Regex-Mustern entsprechen (wo anwendbar)

Kurzreferenz

Blocktypen und Eigenschaften

BlocktypPrimäre AusgabeHäufige Anwendungsfälle
starter.inputWorkflow-Einstiegspunkt
agent.contentKI-Verarbeitung, Texterstellung
function.outputDatentransformation, Berechnungen
api.outputIntegration externer Dienste
conditionN/A (Verzweigung)Bedingte Logik
routerN/A (Verzweigung)Intelligentes Routing
responseN/A (Terminal)Formatierung der Endausgabe
loop.resultsIterative Verarbeitung
parallel.resultsGleichzeitige Verarbeitung
webhook.payloadExterne Auslöser
evaluator.scoreAusgabevalidierung, Qualitätsbewertung
workflow.outputAusführung von Unterworkflows, Modularität

Erforderlich vs. Optional

  • Immer erforderlich: type, name
  • Normalerweise erforderlich: inputs, connections
  • Kontextabhängig: Spezifische Eingabefelder variieren je nach Blocktyp
  • Immer optional: errorVerbindungen, UI-spezifische Felder
Block-Schemas