AAurora Workflows
Get started
Documentation

CLI Runner

Headless workflow execution from any shell or CI system

Overview

The Aurora Workflows CLI Runner (Aurora.Workflows.Cli) is a headless executor that loads a compiled .awfc bundle and runs it. It targets .NET 8 and writes structured log output to the console and to rolling daily log files.

Directory Layout

On first run the CLI Runner creates the following directories next to its executable:

DirectoryPurpose
workflows/Place one or more .awfc files here.
.packages/Local NuGet package cache used to resolve dependencies at runtime.
logs/Rolling daily log files (aurora-YYYYMMDD.log).

Running a Workflow

Place one or more .awfc files in the workflows/ directory, then start the runner:

Aurora.Workflows.Cli.exe
  • If exactly one .awfc file is found, it is loaded and executed immediately.
  • If multiple files are found, the runner lists them and prompts you to enter the index of the desired workflow.
  • If no files are found, the runner logs a warning and exits.

Passing Arguments

Command-line arguments are mapped to global workflow variables before execution starts. The runner supports two syntaxes:

Key=Value syntax

Aurora.Workflows.Cli.exe --inputPath="C:\data\file.csv" --outputPath="C:\out\result.json"

Key Value syntax

Aurora.Workflows.Cli.exe --inputPath "C:\data\file.csv" --outputPath "C:\out\result.json"

Flag (no value) syntax

Aurora.Workflows.Cli.exe --verbose
accessible inside any = expression simply as the variable inputPath (or _global_inputPath from within nested scopes).
Note: Argument names are case-sensitive. The leading -- is stripped; the bare key name is stored.

Logging

The runner uses Serilog with two sinks:

  • Console – formatted as [HH:mm:ss LVL] message.
  • File – rolling daily files in logs/aurora-YYYYMMDD.log, formatted with full timestamps.

The minimum log level is Information. Debug-level messages from individual tasks are suppressed unless you modify the logger configuration in Program.cs.

Console Title

The runner sets the console window title to Aurora Workflow Executor on startup, and changes it to the loaded workflow name once the bundle has been parsed.

Exit Behavior

The runner exits after the workflow finishes. For workflows with periodic triggers (e.g., TimedTrigger, CronTrigger) the process stays alive and keeps firing according to the trigger schedule until it is terminated externally (Ctrl+C or process kill).