PitchHut logo
Orch8 Engine
A streamlined workflow orchestration engine in Rust.
Pitch

Orch8 Engine is a self-hosted, durable workflow orchestration solution designed for simplicity and efficiency. Built in Rust, it enables the definition of workflows using composable JSON sequences, ensuring reliability with every step. With a single binary and PostgreSQL support, Orch8 offers the power of advanced workflow management without the complexity of traditional engines.

Description

Orch8 Engine

Orch8 is a robust, self-hosted workflow orchestration engine developed in Rust, designed for durability and ease of use. It allows users to define workflows as composable JSON sequences, ensuring that each workflow step either completes successfully, retries if necessary, or is sent to a dead-letter queue. The engine operates as a single binary with a straightforward dependency on PostgreSQL (or SQLite for development purposes).

Unique Advantages of Orch8

Unlike existing orchestration engines such as Temporal and Airflow, which require complex multi-service clusters or extensive Python environments, Orch8 simplifies the operational load on teams. By leveraging Rust and PostgreSQL, it offers a high-performing execution model with state-snapshot durability and native support for retries and restarts. Additionally, it facilitates integration with workers written in any language through REST long-polling, making it a versatile choice for various application needs.

Key Features

  • Workflow Primitives: Includes essential building blocks such as Step, Parallel, Race, TryCatch, Loop, ForEach, Router, SubSequence, CancellationScope, and AB Split.
  • Dynamic Scheduling: Advanced features for scheduling workflows, including relative delays, business-day consideration, timezone settings, jitter, send windows, and configurable cron triggers.
  • Rate Limiting: Offers per-resource sliding windows with support for deferred scheduling and resource pools, enhancing execution efficiency and reliability.
  • Robust Reliability: Ensures crash recovery through state snapshots, configurable retries with exponential backoff, and features like idempotency keys and circuit breakers with fallback handling.
  • Concurrency Management: Controls execution flow with per-entity key controls, priority queues, and allows bulk instance operations (create, pause, resume, cancel).
  • Multi-Tenancy Support: Manages tenant-specific queries, rate limits, and isolation middleware to ensure efficient resource handling.
  • Extensibility: Integrates with external workers through REST, supports gRPC sidecar plugins and WASM plugins, and allows for webhook events and workflow interceptors.
  • Observability Tools: Equipped with Prometheus metrics, structured logging, audit logs, execution tree visualization, and Grafana dashboard templates.
  • AI Agent Integration: Supports a unified llm_call handler compatible with major providers, dynamic step modification, and human-in-the-loop capabilities.
  • Security Measures: Implements AES-256-GCM encryption at rest, OAuth2 credential refreshing, API key authentication, and comprehensive CORS configurations.

Getting Started Quickly

Orch8 enables quick onboarding with minimal dependencies. For example, initializing a project with SQLite becomes a straightforward task:

# Initialize a project with Orch8
orch8 init my-project
cd my-project

# Start the engine with insecure flag (skips API key requirement)
orch8-server --insecure

API and SDKs

The Orch8 engine provides a comprehensive API surface with 59 documented REST endpoints across various functional areas. It also offers multiple SDKs in different programming languages, including TypeScript, Python, and Go, allowing developers to build and manage workflows seamlessly.

Community and Support

Orch8 fosters a vibrant community where users can engage, seek assistance, and share insights via Discord. The project is still evolving, with a roadmap directed by user feedback and feature requests, ensuring it meets the demands of its users efficiently.

0 comments

No comments yet.

Sign in to be the first to comment.