Skip to content

rune-org/rune

Repository files navigation

Describe your workflow. Automate your world.


Rune is an open-source workflow automation platform that lets you design, execute, and monitor complex automations through a visual interface.

Whether you're orchestrating API calls, processing data pipelines, or building multi-step integrations, Rune makes it simple to go from idea to execution.

We built Rune because automation shouldn't require a degree in distributed systems. Connect your services, define your logic, and let Rune handle the rest.

Check if Cloudflare is broken via Rune


Table of Contents


Features

Visual Workflow Designer: Build automations by dragging and dropping nodes onto a canvas. Connect them visually, configure their behavior, and watch your workflow come to life.

Visual Workflow Designer

Extensible Node System: A growing library of nodes for API calls, conditional logic, parallel execution, data transformation, and more. Each node is a composable building block that handles one job well.

Extensible Node System

Real-Time Execution Monitoring: Watch your workflows execute node-by-node with live WebSocket updates. Debug issues as they happen, not after the fact.

Real-Time Execution Monitoring

AI Assistants

Smith Smith - Describe what you want in plain English. Smith translates your intent into a working workflow definition. Iterate through conversation until it's exactly right.
Scryb Scryb - Automatically generate documentation for your workflows. Scryb analyzes your automation and produces clear, readable explanations tailored to your audience.

Secure Credential Management: Store API keys, OAuth tokens, and secrets with encryption at rest. Share credentials with team members without exposing sensitive values.

Collaboration Built In: Share workflows with granular permissions. Owners, editors, and viewers each see what they need. Full audit trail for compliance.


Quick Start

The fastest way to get Rune running is with Docker:

# Clone the repository
git clone https://github.com/rune-org/rune.git
cd rune

# Copy the environment template and set your variables
cp .env.example .env

# Start all services
make up

Once the containers are running, open http://localhost:3000 in your browser.

What Gets Started

Service Port Description
Frontend 3000 Web application
API 8000 REST API
RTES 8080 Real-time execution streaming
PostgreSQL 5432 Primary database
MongoDB 27017 Execution history
Redis 6379 State and caching
RabbitMQ 5672 / 15672 Message broker

Stopping Services

make down

Architecture

Rune follows a polyglot microservices architecture, using the right tool for each job:

  • API (Python/FastAPI) - Handles authentication, workflow CRUD, credential management, and orchestration
  • Worker (Go) - Executes workflows recursively, node by node, with fault tolerance
  • RTES (Rust) - Streams execution state in real-time over WebSockets
  • Frontend (Next.js/React) - Visual canvas built on React Flow

Development

For local development with hot reloading:

# Start infrastructure (Postgres, Redis, RabbitMQ, MongoDB)
make dev-infra-up

# In separate terminals, start each service:
make web-dev      # Frontend on :3000
make api-dev      # API on :8000
make worker-dev   # Background worker

Project Structure

rune/
├── apps/
│   └── web/                 # Next.js frontend
├── services/
│   ├── api/                 # FastAPI backend
│   ├── rune-worker/         # Go execution engine
│   └── rtes/                # Rust real-time service
└── docker-compose.yml

Why Rune?

In ancient times, runes were symbols of power, symbols of magic, each one encoding knowledge that could be combined to express complex ideas. Rune, the platform, follows the same philosophy: simple, composable building blocks that combine into something greater.

But beyond the name, we built Rune because:

Automation should be accessible. You shouldn't need to understand message queues, distributed locking, or retry patterns to automate a business process. Rune handles the infrastructure so you can focus on the logic.

Visibility matters. When something goes wrong at 2 AM, you need to know exactly which step failed and why. Real-time monitoring and full execution history make debugging straightforward.

Security isn't optional. Credentials encrypted at rest, role-based access control, and audit logging come standard. Not as an enterprise add-on.

Open source wins. Your automation platform shouldn't be a black box you can't inspect, extend, or self-host.


Contributing

We welcome contributions of all kinds. Whether it's fixing a bug, improving documentation, or proposing a new feature, read the Contributing Guide to get started.


License

Rune is open source software. See LICENSE for more details.