horus-runtime

Quickstart Tutorial

Write and run your first Horus workflow in YAML, from install to output, in a few minutes.

Quickstart

A workflow is a set of tasks. The simplest one has a single task that runs a shell command, so that is where we will start.

1. Write the workflow

Create a file called hello.yaml:

hello.yaml
name: hello
kind: horus_workflow

tasks:
  - id: greet
    name: Greet
    kind: horus_task
    target: { kind: local, working_directory: "./horus-work" }
    runtime:
      kind: command
      command: "echo 'Hello from Horus!' > $message\n"
    executor:
      kind: shell
    outputs:
      - { kind: file, id: message, path: "./horus-out/message.txt" }
Download hello.yaml

What each piece means:

  • runtime is what to run. Here it is a shell command.
  • executor is how to run it. shell runs the command in a subprocess.
  • target is where to run it. local runs on your machine.
  • outputs lists the files this task produces. In the command, $message expands to the output artifact's path, so the task writes its own output.

2. Run it

horus run hello.yaml

A live dashboard takes over the terminal while the workflow runs, with a progress bar, a task table, the dependency graph, and a log pane. The task turns green () once it completes. When the run ends the dashboard closes and leaves a one-line summary behind.

3. Check the result

cat horus-out/message.txt
Hello from Horus!

You described a task in YAML and Horus ran it, with live progress and the output captured on disk.

Where to go next

On this page