Open source

Horus: the open-source engine that runs scientific workflows

Describe a pipeline once, in Python or YAML, and run it wherever the compute lives. Horus tracks every artifact, moves it between machines, and skips work that's already done. AGPL-3.0, no account required.

The Horus terminal dashboard: a progress bar, task table, dependency graph and log pane during a workflow run

Install it

pip install horus-runtime
horus --help

Published on PyPI as horus-runtime. Requires Python 3.13 or newer. Installs the horus command-line tool. Licensed under AGPL-3.0.

The Horus API

A single file you can commit and diff. Each task declares runtime, executor and target; edges form the graph. Re-runs skip tasks whose output already exists.

name: example_pipeline
kind: horus_workflow

tasks:
  - id: producer
    kind: horus_task
    runtime:
      kind: command
      command: "mkdir -p /tmp/horus_example && echo 42 > $data"
    executor:
      kind: shell
    target:
      kind: local
    outputs:
      - id: data
        kind: file
        path: /tmp/horus_example/data.txt

# edges connect tasks into the DAG; add a consumer task that
# declares data as an input and it runs after this one
horus run workflow.yaml