Skip to content

Aktionsreferenz ​

Diese Referenz wird aus dem Aktionskatalog des Echo-Editors und der Rust-Workflow-Engine erzeugt. Vor der Veröffentlichung werden Bezeichnungen und Konfiguration des Editors mit dem ausführbaren Verhalten abgeglichen.

Editor actions ​

Core ​

LLM-Prompt ​

Führt einen LLM-Prompt mit dem konfigurierten Anbieterprofil aus und stellt den zurückgegebenen Text bereit. Es wird kein festes Modell garantiert.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Instructions Prompt (optional), Temperature (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{llm_result}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Fasse {{file_content}} in drei Stichpunkten zusammen und verwende anschließend {{llm_result}} in einem späteren Schritt.


Einfügen ​

Interpoliert den Text, kopiert ihn in die Zwischenablage des Systems und simuliert dann den plattformspezifischen Einfügebefehl in der aktiven App. Paste as a single line ersetzt zuvor Zeilenumbrüche durch Leerzeichen. Im macOS-App-Store-Build bleibt die Einfügesimulation ohne Wirkung, wenn die Bedienungshilfen nicht verfügbar sind.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Content to paste (required), Paste as a single line (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Füge {{llm_result}} in das aktive Dokument ein. Aktiviere den Einzeilenmodus, bevor ein mehrzeiliger Wert in ein Terminal eingefügt wird.


In die Zwischenablage kopieren ​

Legt eine Zeichenfolge in der Zwischenablage des Systems ab. Unterstützt die Interpolation von {{variable}}.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Text to copy (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: clipboardwrite / low Bestätigung zur Laufzeit: Nein

Beispiel: Kopiere {{formatted}} in die Zwischenablage, damit der Wert jederzeit manuell eingefügt werden kann.


Tasteneingabe ​

Simuliert eine Tastenkombination in der aktiven App (z. B. cmd+s, enter, tab, escape). Im macOS-App-Store-Build bleibt die Simulation von Tasteneingaben ohne Wirkung.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Press key stroke (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: inputsynthesis / medium Bestätigung zur Laufzeit: Nein

Beispiel: Drücke nach einem Einfügeschritt cmd+s, um das Dokument automatisch zu speichern.


Shell ​

Führt einen Shell-Befehl mit dem konfigurierten Zeitlimit aus und gibt die erfasste Standardausgabe zurück, ohne führende oder nachgestellte Zeichen zu entfernen.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Shell Command (required), Timeout (seconds) (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{shell_out}} (string) Berechtigung: shell / critical Bestätigung zur Laufzeit: Ja

Beispiel: git log --oneline -10 → {{shell_out}} enthält die letzten zehn Commit-Nachrichten.


Verzögerung ​

Wartet eine feste Anzahl Millisekunden, bevor die Ausführung fortgesetzt wird. Das ist zwischen Tasteneingaben hilfreich, wenn eine App Zeit zum Reagieren benötigt.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Delay (milliseconds) (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Warte nach cmd+t 300 ms, damit sich der neue Browser-Tab öffnet, bevor darin geschrieben wird.


Variable setzen ​

Interpoliert Klartext und {{expressions}} und speichert die resultierende Zeichenfolge unter dem konfigurierten Variablennamen.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Variable Name (required), Value (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{value}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Speichere {{cleaned}}\n\n---\n\n{{summary}} als final_report.


App öffnen ​

Startet eine Anwendung anhand ihres konfigurierten Namens über den Plattform-Launcher. Unter macOS gleicht Echo ähnliche oder unvollständige Namen mit installierten Anwendungen ab; Anwendungspfade werden nicht unterstützt.

Ausführungsstatus: production_registered Felder: Custom Name (optional), App path or name (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: shell / critical Bestätigung zur Laufzeit: Ja

Beispiel: Öffne vor einem Einfügeschritt TextEdit.


Zu App wechseln ​

Bringt eine laufende Anwendung in den Vordergrund. Ist Launch if not running aktiviert, wird die Anwendung gestartet, wenn kein laufender Prozess aktiviert werden kann. Im macOS-App-Store-Build bleibt diese Aktion ohne Wirkung.

Ausführungsstatus: production_registered Felder: Custom Name (optional), App name (required), Launch if not running (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: appcontrol / medium Bestätigung zur Laufzeit: Nein

Beispiel: Wechsle zu Slack. Deaktiviere Launch if not running, wenn der Workflow ausschließlich einen bereits laufenden Prozess fokussieren darf.


Workflow ausführen ​

Ruft einen anderen Workflow als Unterschritt auf und erfasst dessen Ausgabe. So lassen sich große Abläufe aus kleinen, wiederverwendbaren Teilen zusammensetzen.

Ausführungsstatus: runtime_registered Felder: Custom Name (optional), Target Workflow (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{workflow_result}} (object) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Führe den Unter-Workflow „Clean Grammar“ für die Transkription aus und übergib danach {{workflow_result}} an einen Schreibschritt.

File System ​

Datei lesen ​

Liest den gesamten Inhalt einer Datei unter dem angegebenen Pfad. Der Pfad unterstützt die Interpolation von {{variable}}.

Ausführungsstatus: production_registered Felder: Custom Name (optional), File Path (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{file_content}} (string) Berechtigung: fileread / medium Bestätigung zur Laufzeit: Nein

Beispiel: /tmp/meeting-{{datetime}}.md → {{file_content}} enthält den Text der Datei.


Datei schreiben ​

Schreibt eine Zeichenfolge in eine Datei, legt die Datei bei Bedarf an und überschreibt sie andernfalls. Pfad und Inhalt unterstützen beide die Interpolation von {{variable}}.

Ausführungsstatus: production_registered Felder: Custom Name (optional), File Path (required), Content (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: filewrite / medium Bestätigung zur Laufzeit: Nein

Beispiel: Schreibe {{llm_result}} nach /tmp/budgie/summary.md; fehlende übergeordnete Verzeichnisse werden angelegt.


An Datei anhängen ​

Hängt eine Zeichenfolge an das Ende einer vorhandenen Datei an. Legt die Datei an, falls sie noch nicht existiert.

Ausführungsstatus: production_registered Felder: Custom Name (optional), File Path (required), Content (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: filewrite / medium Bestätigung zur Laufzeit: Nein

Beispiel: Hänge {{llm_result}}\n an /tmp/echo-runs.log an. Das übergeordnete Verzeichnis muss bereits vorhanden sein.


Dateien auflisten ​

Listet die direkten Einträge eines Verzeichnisses auf. Glob Filter führt derzeit eine Teilzeichenfolgenprüfung des Dateinamens aus, nachdem führende und nachgestellte * entfernt wurden; es handelt sich nicht um eine vollständige Glob-Implementierung.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Directory (required), Glob Filter (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{file_list}} (array) Berechtigung: fileread / medium Bestätigung zur Laufzeit: Nein

Beispiel: Das Verzeichnis /tmp/reports mit dem Filter *.md liefert Einträge, deren Name .md enthält.


Datei verschieben ​

Verschiebt eine Datei von einem Pfad zu einem anderen beziehungsweise benennt sie um.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Source Path (required), Destination Path (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: filewrite / medium Bestätigung zur Laufzeit: Nein

Beispiel: Archiviere eine verarbeitete Datei, indem du sie von /tmp/inbox/report.pdf nach /tmp/archive/report.pdf verschiebst.


Datei kopieren ​

Dupliziert eine Datei an einem neuen Pfad.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Source Path (required), Destination Path (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: filewrite / medium Bestätigung zur Laufzeit: Nein

Beispiel: Sichere eine Konfigurationsdatei, bevor sie in einem späteren Schritt verändert wird.


Datei löschen ​

Löscht die Datei am angegebenen Pfad. Prüfe vor der Verwendung die erzeugten Angaben zu Berechtigung und Laufzeitbestätigung.

Ausführungsstatus: production_registered Felder: Custom Name (optional), File Path (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: filedelete / high Bestätigung zur Laufzeit: Ja

Beispiel: Lösche /tmp/budgie-doc-contract.txt, sobald der Workflow die Datei nicht mehr benötigt.


Datei vorhanden ​

Prüft, ob am angegebenen Pfad eine Datei oder ein Verzeichnis vorhanden ist. Übergib das Ergebnis an einen If/Else-Schritt.

Ausführungsstatus: production_registered Felder: Custom Name (optional), File Path (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{file_exists}} (boolean) Berechtigung: fileread / medium Bestätigung zur Laufzeit: Nein

Beispiel: /tmp/report.md → {{file_exists}} ist true oder false.


Dateiinformationen abrufen ​

Gibt size, is_file, is_dir, readonly, name, extension und, sofern verfügbar, modified_secs als ganzzahlige Sekunden seit der Unix-Epoche zurück.

Ausführungsstatus: production_registered Felder: Custom Name (optional), File Path (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{file_info}} (object) Berechtigung: fileread / medium Bestätigung zur Laufzeit: Nein

Beispiel: {{file_info}} enthält beispielsweise name: report.md, size: 4096, is_file: true und modified_secs: 1780477200.


Verzeichnis erstellen ​

Erstellt ein Verzeichnis samt aller Zwischenverzeichnisse am angegebenen Pfad. Ist das Verzeichnis bereits vorhanden, geschieht nichts.

Ausführungsstatus: production_registered Felder: Custom Name (optional), File Path (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: filewrite / medium Bestätigung zur Laufzeit: Nein

Beispiel: Stelle vor dem Schreiben sicher, dass /tmp/exports/{{datetime}}/ und alle fehlenden übergeordneten Verzeichnisse vorhanden sind.

Text ​

Suchen und Ersetzen ​

Ersetzt alle wörtlichen oder regulären Ausdrücke in einer Eingabezeichenfolge. Der aktuelle Editor stellt Suche, Ersetzung und Regex-Modus bereit, jedoch kein Eingabefeld.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Find (required), Replace (optional), Use regex (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{replaced}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Die Laufzeit kann jedes TODO: in einer Eingabezeichenfolge ersetzen, der aktuelle Editor kann diese Eingabe jedoch nicht konfigurieren.


Regex extrahieren ​

Gibt ein Array zurück, das aus jedem Regex-Treffer die gewählte Erfassungsgruppe enthält. Gruppe 0 liefert jeweils den vollständigen Treffer. Der aktuelle Editor stellt die Eingabezeichenfolge nicht bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Pattern (required), Capture Group (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{match}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Die Laufzeit kann (PROJ-\d+) mit Gruppe 1 anwenden, der aktuelle Editor kann den zu durchsuchenden Text jedoch nicht konfigurieren.


Aufteilen ​

Teilt eine Zeichenfolge anhand des Laufzeit-Trennzeichens und gibt ein Array zurück. Der aktuelle Editor stellt den Eingabewert, jedoch kein Feld für das Trennzeichen bereit; im Editor erstellte Schritte serialisieren daher ein leeres Trennzeichen.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{parts}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Verwende diese Aktion nur, wenn die Workflow-Definition ein Trennzeichen liefert; der aktuelle Editor kann keines konfigurieren.


Verbinden ​

Verbindet die Werte einer benannten Array-Variablen mit dem Laufzeit-Trennzeichen. Der aktuelle Editor stellt nur einen allgemeinen Wert und keine Steuerung für das Trennzeichen bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{joined}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Verwende diese Aktion nur, wenn die Workflow-Definition Array-Variable und Trennzeichen liefert; der aktuelle Editor kann sie nicht vollständig konfigurieren.


Bereinigen ​

Entfernt Leerraum am Anfang und Ende einer Zeichenfolge.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{trimmed}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Bereinige {{shell_out}}, um den abschließenden Zeilenumbruch der Ausgabe eines Shell-Befehls zu entfernen.


Groß-/Kleinschreibung umwandeln ​

Wandelt eine Zeichenfolge in Großschreibung, Kleinschreibung, Titelschreibung, camel case oder snake case um. Der aktuelle Editor stellt den Modus, jedoch kein Eingabefeld bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Transform Mode (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{cased}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Die Laufzeit kann report name im camel-Modus in reportName umwandeln, der aktuelle Editor kann die Eingabe jedoch nicht konfigurieren.


Teilzeichenfolge ​

Extrahiert Zeichen ab einem nullbasierten Startindex bis zu einem optionalen Endindex. Der aktuelle Editor stellt keinen der beiden Indizes bereit und serialisiert Start 0 ohne Ende.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{slice}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Ein im Editor erstellter Schritt gibt derzeit die vollständige Eingabe zurück, da Start- und Endindex nicht konfiguriert werden können.


Enthält ​

Prüft auf eine wörtliche, zwischen Groß- und Kleinschreibung unterscheidende Teilzeichenfolge; reguläre Ausdrücke werden nicht unterstützt. Der aktuelle Editor stellt das Feld für die Teilzeichenfolge nicht bereit und serialisiert eine leere Suchzeichenfolge.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{contains}} (boolean) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Verwende diese Aktion nur, wenn die Workflow-Definition die wörtliche Suchzeichenfolge liefert; der aktuelle Editor kann sie nicht konfigurieren.


Wörter zählen ​

Zählt die Wörter einer Zeichenfolge.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{word_count}} (number) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Steuere einen Zusammenfassungsschritt mit {{word_count}} > 50 über einen If/Else-Block.


URL kodieren ​

Kodiert eine Zeichenfolge prozentbasiert für einen URL-Abfrageparameter. Die Laufzeit kann auch dekodieren, doch der aktuelle Editor stellt keinen Modus bereit und serialisiert immer den Kodiermodus.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{encoded}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: {{search_term}} → "hello%20world".


Base64 ​

Kodiert eine Zeichenfolge mit Base64. Die Laufzeit kann auch dekodieren, doch der aktuelle Editor stellt keinen Modus bereit und serialisiert immer den Kodiermodus.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{b64}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Kodiere hello als aGVsbG8=.


HTML entfernen ​

Entfernt alle HTML-Tags aus einer Zeichenfolge und lässt nur den Textinhalt stehen.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{plain}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Entferne HTML aus einem eingefügten Web-Ausschnitt, bevor er an LLM-Prompt übergeben wird.


Scribe-Bereinigung ​

Bereinigt ein Transkript mit BudgieScribe, dem lokalen Modell, das Füllwörter und Fehlstarts entfernt und die Zeichensetzung wiederherstellt. Sprache leer lassen, um sie am Text zu erkennen, oder fr/en erzwingen. Ist das Modell für diese Sprache nicht installiert, Scribe beschäftigt oder lehnt seine Prüfung das Ergebnis ab, wird der Text unverändert weitergereicht.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Text to clean up (required), Language (blank = detect) (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{cleaned}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Schicken Sie {{transcription}} vor einem LLM-Prompt durch die Scribe-Bereinigung, damit der Prompt einen sauberen Satz statt roher Diktation liest.


Vorlage formatieren ​

Interpoliert Budgie-{{expressions}} in einer Vorlagenzeichenfolge; dies ist kein Handlebars- oder Mustache-Renderer.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Template (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{formatted}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Vorlage: Dear {{name}},\nYour order {{order_id}} has shipped. → personalisierter E-Mail-Text.

System ​

Zwischenablage abrufen ​

Liest den Inhalt der Systemzwischenablage als Zeichenfolge zu dem Zeitpunkt, an dem der Schritt ausgeführt wird.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{clipboard}} (string) Berechtigung: clipboardread / low Bestätigung zur Laufzeit: Nein

Beispiel: Verwende die Aktion nach einer Tasteneingabe mit cmd+c, um den gerade kopierten Inhalt zu lesen.


Laufende Apps auflisten ​

Gibt die eindeutigen Prozessnamen zurück, die das Betriebssystem für aktuell laufende Prozesse meldet.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{apps}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Prüfe vor dem Fortfahren, ob Safari in {{apps}} vorkommt.


Aktives Fenster ​

Gibt unter macOS ein Objekt der Form {app} mit dem Prozessnamen der vordersten Anwendung zurück; ein Fenstertitel ist nicht enthalten. Andere Plattformen geben derzeit eine leere app-Zeichenfolge zurück.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{window}} (object) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: {{window}} kann {"app":"Mail"} enthalten, wenn Mail im Vordergrund ist.


Datum/Uhrzeit ​

Formatiert das aktuelle lokale Datum und die Uhrzeit mit einer Chrono-Formatzeichenfolge. Der Standard lautet %Y-%m-%dT%H:%M:%S.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Format (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{datetime}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: {{datetime}} → "2026-06-03T09:42:00" — als Zeitstempel in einem Dateinamen verwendbar.


Umgebungsvariable abrufen ​

Liest eine Umgebungsvariable anhand ihres Namens und gibt eine leere Zeichenfolge zurück, wenn sie nicht vorhanden ist.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Variable Name (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{env_value}} (string) Berechtigung: envread / low Bestätigung zur Laufzeit: Nein

Beispiel: Lies HOME und bilde daraus einen Pfad wie {{env_value}}/Documents/example.md.


Systeminformationen ​

Gibt ein Objekt mit os, hostname, cpu_count, total_memory_mb und used_memory_mb zurück.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{system_info}} (object) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Füge {{system_info}} in einen Workflow für Fehlerberichte ein, um Kontext automatisch anzuhängen.


Bildschirmaufnahme ​

Erfasst unter macOS den aktuellen Bildschirm in einem PNG-Pfad. Eine serialisierte Region wird ignoriert; der Editor stellt weder Region noch Ausgabepfad bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{screenshot_path}} (string) Berechtigung: screencapture / medium Bestätigung zur Laufzeit: Nein

Beispiel: Erfasse den aktuellen Bildschirm und übergib {{screenshot_path}} an einen späteren Schritt.


Prüfen, ob App läuft ​

Prüft ohne Beachtung von Groß- und Kleinschreibung, ob ein laufender Prozessname den konfigurierten Text enthält.

Ausführungsstatus: production_registered Felder: Custom Name (optional), App Name (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{app_running}} (boolean) Berechtigung: appcontrol / medium Bestätigung zur Laufzeit: Nein

Beispiel: Safari → {{app_running}} ist true, wenn ein passender Prozess vorhanden ist.

App Control ​

App beenden ​

Fordert eine Anwendung unter macOS über AppleScript zum Beenden auf. Auf anderen unterstützten Plattformen werden Prozesse beendet, deren Name den konfigurierten Text enthält.

Ausführungsstatus: production_registered Felder: Custom Name (optional), App Name (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: appcontrol / medium Bestätigung zur Laufzeit: Nein

Beispiel: Beende TextEdit, nachdem die Datei im vorherigen Schritt gespeichert wurde.


AppleScript ausführen ​

Führt unter macOS ein interpoliertes AppleScript aus und gibt die bereinigte Standardausgabe als Zeichenfolge zurück. Andere Plattformen melden einen Fehler wegen einer nicht unterstützten Plattform.

Ausführungsstatus: production_registered Felder: Custom Name (optional), AppleScript (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{script_result}} (string) Berechtigung: applescript / critical Bestätigung zur Laufzeit: Ja

Beispiel:

applescript
tell application "Finder" to get name of front window

→ {{script_result}} enthält den Namen des vordersten Finder-Fensters.


Kurzbefehl ausführen ​

Führt unter macOS einen benannten Kurzbefehl aus und stellt dessen bereinigte Standardausgabe bereit. Andere Plattformen melden einen Fehler wegen einer nicht unterstützten Plattform.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Shortcut Name (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{shortcut_result}} (string) Berechtigung: macosshortcut / high Bestätigung zur Laufzeit: Ja

Beispiel: Führe den Kurzbefehl „Send to Notes“ aus und verwende danach {{shortcut_result}} im nächsten Schritt.

Network ​

HTTP-Anfrage ​

Sendet GET, POST, PUT, DELETE oder PATCH mit interpolierter URL und optionalem Inhalt. Der aktuelle Editor stellt nur URL, Methode und Inhalt bereit; Anfrage-Header können nicht konfiguriert werden.

Ausführungsstatus: production_registered Felder: Custom Name (optional), URL (required), Method (required), Request Body (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{http_response}} (object) Berechtigung: network / medium Bestätigung zur Laufzeit: Nein

Beispiel: Sende {{llm_result}} per POST an einen Webhook und lies danach {{http_response.status}}, {{http_response.body}} oder das analysierte {{http_response.json}}.


Datei herunterladen ​

Lädt eine URL an den konfigurierten lokalen Pfad herunter. Diese Aktion stellt keine Datenausgabevariable bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), URL (required), Save To Path (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: filewrite / high Bestätigung zur Laufzeit: Ja

Beispiel: Lade https://example.com/report.pdf nach /tmp/downloads/example.pdf; fehlende übergeordnete Verzeichnisse werden angelegt.


URL prüfen ​

Führt eine HEAD-Anfrage aus und gibt true zurück, sobald eine Antwort eingeht, unabhängig vom HTTP-Status; Transportfehler geben false zurück.

Ausführungsstatus: production_registered Felder: Custom Name (optional), URL (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{url_ok}} (boolean) Berechtigung: network / medium Bestätigung zur Laufzeit: Nein

Beispiel: Verwende {{url_ok}}, um Transportfehler vor einem Download zu erkennen; eine HTTP-Fehlerantwort wie 404 ergibt weiterhin true.

Math & Data ​

Mathematischer Ausdruck ​

Wertet einen mathematischen Ausdruck aus. Unterstützt die üblichen arithmetischen Operatoren, Klammern und Werte aus {{variable}}.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Expression (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{math_result}} (number) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: ({{word_count}} / 250) * 60 → geschätzte Lesezeit in Sekunden → {{math_result}}.


JSON analysieren ​

Analysiert eine JSON-Zeichenfolge als strukturierten Wert. In späteren Schritten lassen sich Felder per Punktnotation aufrufen: {{json_obj.name}}.

Ausführungsstatus: production_registered Felder: Custom Name (optional), JSON Input (required), Output Variable (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{json_obj}} (any) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Analysiere {{http_response.body}} und greife dann auf ein Feld wie {{json_obj.data[0].id}} zu.


JSON serialisieren ​

Serialisiert eine benannte Workflow-Variable als JSON. Der aktuelle Editor stellt weder eine Eingabevariable noch eine Steuerung für formatierte Ausgabe bereit; im Editor erstellte Schritte serialisieren daher einen leeren Variablennamen im kompakten Modus.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{json_str}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Verwende diese Aktion nur, wenn die Workflow-Definition die Eingabevariable liefert; der aktuelle Editor kann sie nicht konfigurieren.


CSV analysieren ​

Analysiert eine CSV-Zeichenfolge mit Kopfzeile als Array aus Objekten, deren Schlüssel den Spaltennamen entsprechen.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{csv_rows}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Analysiere {{file_content}} aus einer CSV-Datei → {{csv_rows[0].email}} ist die E-Mail-Spalte der ersten Zeile.


Variable abrufen ​

Liest eine Variable aus dem Workflow-Kontext anhand des exakt konfigurierten Namens. Ist der Name nicht vorhanden, wird null zurückgegeben.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Variable Name (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{var_value}} (any) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Der Variablenname summary gibt den aktuellen Wert von summary zurück.

Arrays ​

Array erstellen ​

Erstellt ein Array aus der Laufzeitliste items. Der aktuelle Editor stellt kein Feld für Elemente bereit, daher erzeugen im Editor erstellte Schritte ein leeres Array.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{array}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Ein im Editor erstellter Schritt „Array erstellen“ stellt [] in seiner Ausgabevariable bereit.


An Array anhängen ​

Hängt einen Wert an eine benannte Array-Variable an, schreibt das neue Array zurück und gibt es aus. Der aktuelle Editor stellt den Wert, jedoch nicht den Namen des Ziel-Arrays bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{array}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Die Laufzeit kann das wörtliche Element done an summaries anhängen, der aktuelle Editor kann summaries jedoch nicht als Ziel konfigurieren.


Nach Index abrufen ​

Gibt anhand eines nullbasierten Index ein Element aus einem benannten Array zurück; negative Indizes zählen vom Ende. Der aktuelle Editor stellt weder Array-Name noch Index bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{item}} (any) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Die Laufzeit kann Index 0 aus file_list zurückgeben, der aktuelle Editor kann diese Parameter jedoch nicht konfigurieren.


Array filtern ​

Filtert ein benanntes Array anhand einer Bedingung, die für jedes item/it ausgewertet wird. Der aktuelle Editor stellt weder Array-Name noch Bedingung bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{filtered}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Diese Aktion benötigt eine Workflow-Definition, die sowohl array_var als auch condition liefert; der aktuelle Editor kann sie nicht konfigurieren.


Array abbilden ​

Interpoliert eine Vorlage für jedes item/it in einem benannten Array und gibt die resultierenden Zeichenfolgen zurück. Der aktuelle Editor stellt weder Array-Name noch Vorlage bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{mapped}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Diese Aktion benötigt eine Workflow-Definition, die sowohl array_var als auch template liefert; der aktuelle Editor kann sie nicht konfigurieren.


Array sortieren ​

Sortiert ein benanntes Array anhand der Zeichenfolgendarstellung jedes Werts und schreibt es zurück. Die Laufzeit unterstützt auf- oder absteigende Reihenfolge; der aktuelle Editor stellt keine der beiden Einstellungen bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{sorted}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Die Laufzeit kann file_list sortieren, der aktuelle Editor kann weder Ziel-Array noch Richtung konfigurieren.


Eindeutige Werte ​

Entfernt doppelte Zeichenfolgendarstellungen aus einem benannten Array und behält jeweils das erste Vorkommen. Der aktuelle Editor stellt den Array-Namen nicht bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{unique}} (array) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Die Laufzeit kann tags deduplizieren, der aktuelle Editor kann dieses Ziel jedoch nicht konfigurieren.


Array-Länge ​

Gibt die Anzahl der Elemente in einem benannten Array zurück. Der aktuelle Editor stellt den Array-Namen nicht bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{length}} (number) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Die Laufzeit kann file_list zählen, der aktuelle Editor kann dieses Ziel jedoch nicht konfigurieren.


Array enthält ​

Vergleicht Zeichenfolgendarstellungen, um zu prüfen, ob ein benanntes Array einen Wert enthält. Der aktuelle Editor stellt den Wert, jedoch nicht den Array-Namen bereit.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Value (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{contains}} (boolean) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Die Laufzeit kann prüfen, ob apps den Wert Safari enthält, der aktuelle Editor kann apps jedoch nicht als Ziel konfigurieren.

Persistence ​

Aus Speicher lesen ​

Liest die zu einem Schlüssel gehörende Zeichenfolge aus dem dauerhaften Speicher. Ist der Schlüssel nicht vorhanden, wird null zurückgegeben.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Key (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{store_value}} (any) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Schlüssel: "daily_count" → {{store_value}} ist der gespeicherte Zählerstand oder bei fehlendem Schlüssel null.


In Speicher schreiben ​

Interpoliert eine Zeichenfolge und schreibt sie unter einem Schlüssel in den dauerhaften Speicher; ein vorhandener Eintrag wird überschrieben.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Key (required), Value (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: persistence / low Bestätigung zur Laufzeit: Nein

Beispiel: Nach dem Erhöhen: Schreibe {{math_result}} unter den Schlüssel "daily_count".


Aus Speicher löschen ​

Entfernt einen Schlüssel aus dem dauerhaften Speicher.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Key (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: persistence / low Bestätigung zur Laufzeit: Nein

Beispiel: Setze den Schlüssel "daily_count" zu Beginn jedes Tages mithilfe einer Datum/Uhrzeit- und If/Else-Prüfung zurück.

UI ​

Dialog anzeigen ​

Zeigt unter macOS einen modalen Dialog mit Titel, Nachricht und Texteingabe an und gibt nach OK den eingegebenen Text zurück. Außerhalb von macOS protokolliert der aktuelle Handler den Dialog und gibt OK zurück.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Title (optional), Message (required), Predefined Options (optional), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: {{dialog_input}} (string) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Frage: „Welche Betreffzeile soll ich verwenden?“ → {{dialog_input}} wird an einen LLM-Prompt-Schritt übergeben.


Mitteilung ​

Zeigt unter macOS eine Systemmitteilung mit Titel und Nachricht an, ohne zu warten. Außerhalb von macOS wird sie vom aktuellen Handler nur protokolliert.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Title (optional), Message (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Zeige nach einem Schreibschritt die Mitteilung „Workflow abgeschlossen — Datei auf dem Schreibtisch gespeichert“ an.


Ton abspielen ​

Behandelt unter macOS den Editor-Wert Sound File Path als Namen eines Systemtons und spielt /System/Library/Sounds/{name}.aiff ab; beliebige Dateipfade werden nicht unterstützt. Außerhalb von macOS bleibt der Handler ohne Wirkung.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Sound File Path (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Verwende Glass, um nach einem langen Schritt /System/Library/Sounds/Glass.aiff abzuspielen.


Sprachausgabe ​

Spricht interpolierten Text über die in den Einstellungen gewählte TTS-Engine. Die Standard-Engine ist Echos nativer System-TTS-Anbieter unter macOS und Windows und benötigt kein heruntergeladenes Echo-Stimmenmodell; die optionale lokale neuronale Engine wird nie implizit gewählt und spricht nur, wenn sie in den Einstellungen ausdrücklich ausgewählt und ihr Modell installiert ist. Eine leere Stimme verwendet den konfigurierten Standard; eine anbieterqualifizierte Stimmüberschreibung wird vom Anbieter validiert.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Text to Speak (required), Voice (optional) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Lies {{llm_result}} sofort vor, statt auf das Ende des Workflows zu warten.


Reader ​

Übergibt Text an den Reader: einmal vorlesen oder unter einem optionalen eigenen Namen zur Reader-Bibliothek hinzufügen.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Text (required), Operation (required) Steuereingänge: mainSteuerausgänge: mainDatenausgabe: Keine Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Nach einer LLM-Zusammenfassung eines langen Artikels {{summary}} an den Reader geben, damit er vorgelesen wird, während Sie weiterarbeiten.

Control Flow ​

If/Else ​

Wertet eine Bedingung aus und leitet den Steuerfluss über den benannten Port true oder false. Die Datenausgabe ist von diesen Steuerports getrennt.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Condition (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: true, falseDatenausgabe: {{branch_result}} (any) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Leite {{file_exists}} == true über true; sende die Mitteilung über die fehlende Datei über false.


Schleife ​

Leitet Zähl-, Variablen-Array- oder While-Iterationen über loop und fährt danach über done fort. Es wird keine Datenausgabevariable bereitgestellt. Der Elementmodus des Editors serialisiert derzeit eine leere wörtliche Liste.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Loop Mode (required), Repeat Times (optional), Array Variable (optional), While Condition (optional) Steuereingänge: mainSteuerausgänge: loop, doneDatenausgabe: Keine Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Wähle den Variablenmodus mit der Array-Variablen file_list ohne Klammern, verarbeite jedes {{item}} über loop und fahre danach von done fort.


Switch ​

Leitet den Steuerfluss über einen passenden Port case:<pattern> oder default. Die Datenausgabe ist von diesen Steuerports getrennt.

Ausführungsstatus: production_registered Felder: Custom Name (optional), Switch Value (required), Cases (required), Output Variable Name (optional) Steuereingänge: mainSteuerausgänge: case:<pattern>, defaultDatenausgabe: {{switch_result}} (any) Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Verwende die Ports case:email, case:chat und default, um den passenden Formatierungszweig auszuwählen.


Try/Catch ​

Leitet die normale Ausführung über den benannten Port try und Fehler über catch. Es wird keine Datenausgabevariable bereitgestellt.

Ausführungsstatus: production_registered Felder: Custom Name (optional) Steuereingänge: mainSteuerausgänge: try, catchDatenausgabe: Keine Berechtigung: Keine Bestätigung zur Laufzeit: Nein

Beispiel: Führe eine HTTP-Anfrage über try aus und zeige über catch eine Fehlermitteilung an.

Nur zur Laufzeit verfügbare Aktionen ​

Diese Rust-Workflow-Varianten sind ausführbar oder einlesbar, werden jedoch nicht in der aktuellen Aktionsauswahl des Editors angeboten.

Rust variantStatusBerechtigungBestätigung zur LaufzeitAvailability
AudioCaptureproduction_registeredKeineNeinWird von der internen Transkriptionspipeline von Echo verwendet.
MatchSnippetknown_unimplementedKeineNeinVom Workflow-Format erkannt, aber nicht implementiert; nicht verwenden.
OpenUrlproduction_registerednetwork / mediumNeinFür integrierte oder YAML-Workflows verfügbar, jedoch nicht in der Aktionsauswahl des Editors.
Pasteproduction_registeredclipboardread / lowNeinFür integrierte oder YAML-Workflows verfügbar, jedoch nicht in der Aktionsauswahl des Editors.
Pluginproduction_registeredplugin / highJaÜber die Workflow-Plugin-Laufzeit verfügbar, jedoch nicht in der Aktionsauswahl des Editors.
Transcribeproduction_registeredKeineNeinWird von der internen Transkriptionspipeline von Echo verwendet.
TypeTextproduction_registeredinputsynthesis / mediumNeinFür integrierte oder YAML-Workflows verfügbar, jedoch nicht in der Aktionsauswahl des Editors.
WaitForFocusproduction_registeredKeineNeinFür integrierte oder YAML-Workflows verfügbar, jedoch nicht in der Aktionsauswahl des Editors.

Veröffentlicht unter der MIT-Lizenz.