gitmyhub

conductor

Java ★ 32k updated 10h ago

Conductor is an event driven agentic workflow engine providing durable and highly resilient execution engine for applications and AI Agents

Conductor is an open-source workflow engine that reliably coordinates multi-step processes across distributed systems, automatically resuming from the exact point of failure rather than restarting from scratch.

JavaPythonGoJavaScriptsetup: hardcomplexity 4/5

Conductor is an open-source workflow engine that coordinates multi-step processes across distributed systems, making sure every step completes reliably even when servers crash, networks fail, or individual services are temporarily unavailable. The core problem it solves is that real-world processes, like processing a payment, onboarding a user, or running an AI agent loop, involve many steps across many services, and without a coordinator, a failure halfway through leaves things in an inconsistent state with no clear way to resume.

Conductor works by representing workflows as JSON definitions made up of tasks. Each task is executed by a worker, which is a small piece of code you write in any language: Java, Python, Go, JavaScript, or others. Workers poll Conductor for work, execute their logic, and report results back. Conductor handles all the orchestration logic, including retries on failure, timeouts, conditional branches, parallel forks, and sub-workflow calls. Every step is persisted, so if a workflow fails at step seven of twenty, it resumes from step seven rather than starting over.

For AI use cases, Conductor natively supports LLM task types that call language model providers, MCP tool calling, human-in-the-loop approval steps, and vector database lookups. This makes it possible to build autonomous AI agents where Conductor manages the think-act loop durably.

You would use Conductor when building microservice orchestration, long-running business processes, ETL pipelines, or AI agent systems that need to survive failures and be observable, auditable, and replayable. The server is written in Java and requires Java 21, while workers can be written in any supported language. It was originally built at Netflix and is now maintained as an open-source project under the Apache 2.0 license.

Where it fits