---
title: Start
---

import { Callout } from 'fumadocs-ui/components/callout'
import { Tab, Tabs } from 'fumadocs-ui/components/tabs'
import { Image } from '@/components/ui/image'

Der Start-Block ist der Standard-Auslöser für Workflows, die in Sim erstellt werden. Er sammelt strukturierte Eingaben und verteilt sie an den Rest deines Graphen für Editor-Tests, API-Bereitstellungen und Chat-Erlebnisse.

<div className="flex justify-center">
  <Image
    src="/static/start.png"
    alt="Start-Block mit Eingabeformat-Feldern"
    width={360}
    height={380}
    className="my-6"
  />
</div>

<Callout type="info">
Der Start-Block befindet sich in der Startposition, wenn du einen Workflow erstellst. Behalte ihn dort, wenn du denselben Einstiegspunkt für Editor-Ausführungen, Deploy-to-API-Anfragen und Chat-Sitzungen verwenden möchtest. Tausche ihn mit Webhook- oder Schedule-Triggern aus, wenn du nur ereignisgesteuerte Ausführung benötigst.
</Callout>

## Von Start bereitgestellte Felder

Der Start-Block gibt je nach Ausführungsumgebung unterschiedliche Daten aus:

- **Eingabeformat-Felder** — Jedes Feld, das du hinzufügst, wird als <code>&lt;start.fieldName&gt;</code> verfügbar. Zum Beispiel erscheint ein `customerId`Feld als <code>&lt;start.customerId&gt;</code> in nachgelagerten Blöcken und Vorlagen.
- **Nur-Chat-Felder** — Wenn der Workflow über das Chat-Seitenfeld oder ein bereitgestelltes Chat-Erlebnis ausgeführt wird, stellt Sim auch <code>&lt;start.input&gt;</code> (neueste Benutzernachricht), <code>&lt;start.conversationId&gt;</code> (aktive Sitzungs-ID) und <code>&lt;start.files&gt;</code> (Chat-Anhänge) bereit.

Halte die Eingabeformat-Felder auf die Namen beschränkt, auf die du später verweisen möchtest – diese Werte sind die einzigen strukturierten Felder, die über Editor-, API- und Chat-Ausführungen hinweg geteilt werden.

## Konfiguriere das Eingabeformat

Verwende den Eingabeformat-Unterblock, um das Schema zu definieren, das für alle Ausführungsmodi gilt:

1. Füge ein Feld für jeden Wert hinzu, den du sammeln möchtest.
2. Wähle einen Typ (`string`, `number`, `boolean`, `object`, `array` oder `files`). Dateifelder akzeptieren Uploads von Chat- und API-Aufrufern.
3. Gib Standardwerte an, wenn du möchtest, dass das manuelle Ausführungsmodal automatisch Testdaten einfügt. Diese Standardwerte werden für bereitgestellte Ausführungen ignoriert.
4. Ordne Felder neu an, um zu steuern, wie sie im Editor-Formular erscheinen.

Referenzieren Sie strukturierte Werte nachgelagert mit Ausdrücken wie <code>&lt;start.customerId&gt;</code> abhängig vom Block, den Sie verbinden.

## Wie es sich je nach Einstiegspunkt verhält

<Tabs items={['Editor-Ausführung', 'Bereitstellung als API', 'Bereitstellung für Chat']}>
  <Tab>
    <div className="space-y-3">
      <p>
        Wenn Sie im Editor auf <strong>Ausführen</strong> klicken, rendert der Start-Block das Eingabeformat als Formular. Standardwerte erleichtern das erneute Testen ohne erneute Dateneingabe. Durch das Absenden des Formulars wird der Workflow sofort ausgelöst und die Werte werden unter <code>&lt;start.feldName&gt;</code> (zum Beispiel <code>&lt;start.sampleField&gt;</code>) verfügbar.
      </p>
      <p>
        Dateifelder im Formular werden direkt in die entsprechenden{' '}
        <code>&lt;start.fieldName&gt;</code> hochgeladen; verwenden Sie diese Werte,
        um nachgelagerte Tools oder Speicherschritte zu versorgen.
      </p>
    </div>
  </Tab>
  <Tab>
    <div className="space-y-3">
      <p>
        Die Bereitstellung als API verwandelt das Eingabeformat in einen JSON-Vertrag für Clients. Jedes Feld wird Teil des Anforderungskörpers, und Sim erzwingt primitive Typen bei der Aufnahme. Dateifelder erwarten Objekte, die auf hochgeladene Dateien verweisen; verwenden Sie den Ausführungs-Datei-Upload-Endpunkt, bevor Sie den Workflow aufrufen.
      </p>
      <p>
        API-Aufrufer können zusätzliche optionale Eigenschaften einbeziehen. Diese
        werden in den <code>&lt;start.fieldName&gt;</code>Ausgaben beibehalten, sodass
        Sie experimentieren können, ohne sofort neu bereitzustellen.
      </p>
    </div>
  </Tab>
  <Tab>
    <div className="space-y-3">
      <p>
        Bei Chat-Bereitstellungen bindet sich der Start-Block an die aktive Konversation. Die neueste Nachricht füllt <code>&lt;start.input&gt;</code>, die Sitzungskennung ist unter <code>&lt;start.conversationId&gt;</code> verfügbar, und Benutzeranhänge erscheinen unter <code>&lt;start.files&gt;</code>, zusammen mit allen Eingabeformatfeldern, die als <code>&lt;start.fieldName&gt;</code> definiert sind.
      </p>
      <p>
        Wenn Sie den Chat mit zusätzlichem strukturiertem Kontext starten (zum
        Beispiel aus einer Einbettung), wird dieser mit den entsprechenden{' '}
        <code>&lt;start.fieldName&gt;</code>Ausgaben zusammengeführt, wodurch
        nachgelagerte Blöcke konsistent mit API- und manuellen Ausführungen bleiben.
      </p>
    </div>
  </Tab>
</Tabs>

## Referenzierung von Start-Daten in nachgelagerten Komponenten

- Verbinde <code>&lt;start.fieldName&gt;</code> direkt mit Agenten, Tools oder Funktionen, die strukturierte Daten erwarten.
- Verwende Template-Syntax wie <code>&lt;start.sampleField&gt;</code> oder <code>&lt;start.files[0].url&gt;</code> (nur für Chat) in Prompt-Feldern.
- Halte <code>&lt;start.conversationId&gt;</code> bereit, wenn du Ausgaben gruppieren, den Gesprächsverlauf aktualisieren oder die Chat-API erneut aufrufen musst.

## Best Practices

- Behandle den Start-Block als einzigen Einstiegspunkt, wenn du sowohl API- als auch Chat-Aufrufer unterstützen möchtest.
- Bevorzuge benannte Eingabeformat-Felder gegenüber dem Parsen von rohem JSON in nachgelagerten Knoten; Typumwandlung erfolgt automatisch.
- Füge unmittelbar nach dem Start Validierung oder Routing hinzu, wenn bestimmte Felder für den Erfolg deines Workflows erforderlich sind.

- Verbinde <code>&lt;start.fieldName&gt;</code> direkt mit Agenten, Tools oder Funktionen, die strukturierte Daten erwarten.
- Verwende Template-Syntax wie <code>&lt;start.sampleField&gt;</code> oder <code>&lt;start.files[0].url&gt;</code> (nur im Chat) in Prompt-Feldern.
- Halte <code>&lt;start.conversationId&gt;</code> bereit, wenn du Ausgaben gruppieren, Gesprächsverlauf aktualisieren oder die Chat-API erneut aufrufen musst.

## Bewährte Praktiken

- Behandle den Start-Block als einzigen Einstiegspunkt, wenn du sowohl API- als auch Chat-Aufrufer unterstützen möchtest.
- Bevorzuge benannte Eingabeformat-Felder gegenüber dem Parsen von rohem JSON in nachgelagerten Knoten; Typumwandlung erfolgt automatisch.
- Füge Validierung oder Routing unmittelbar nach dem Start hinzu, wenn bestimmte Felder für den Erfolg deines Workflows erforderlich sind.

## Best Practices

- Behandeln Sie den Start-Block als einzigen Einstiegspunkt, wenn Sie sowohl API- als auch Chat-Aufrufer unterstützen möchten.
- Bevorzugen Sie benannte Input-Format-Felder gegenüber dem Parsen von rohem JSON in nachgelagerten Knoten; die Typumwandlung erfolgt automatisch.
- Fügen Sie unmittelbar nach Start eine Validierung oder ein Routing hinzu, wenn bestimmte Felder für den Erfolg Ihres Workflows erforderlich sind.