Conductor is an open-source orchestration engine built at Netflix to help developers manage microservices and event-driven workflows. Today, it’s actively maintained by the team at Orkes and a growing community of contributors.
- Table of Contents
- What is Conductor?
- Getting Started with Conductor
- Conductor SDKs
- Documentation
- Community / I Need Help
- Backend Configuration options
- Build from source
- Frequently Asked Questions
- Contributing
- Conductor OSS Roadmap
- License
Conductor (or Netflix Conductor) is a durable orchestration engine for workflows and agents. It empowers developers to create workflows that define interactions between services, agents databases, and other external systems providing durability of execution against underlying infrastructure failures.
Conductor is designed to enable flexible, resilient, and scalable workflows. It allows you to compose services into complex workflows without coupling them tightly, simplifying orchestration across cloud-native applications and enterprise systems alike.
Conductor OSS is the continuation of Netflix Conductor Repository afer Netflix contributed the source to the OSS foundation.
- Durable Execution Workflows are guaranteed to complete even when there are temporary failures in the system.
- Resilience and Error Handling: Conductor enables automatic retries and fallback mechanisms.
- Scalability: Built to scale with complex workflows in high-traffic environments.
- Observability: Provides monitoring and debugging capabilities for workflows.
- Ease of Integration: Seamlessly integrates with microservices, agents, LLMs, external APIs, and legacy systems.
- Built-in UI: A customizable UI is available to monitor and manage workflows.
- Flexible persistence: Use Redis, MySQL, Postgres, and more.
- Microservices orchestration Orchestrate very complex microservices flows both synchronously and asynchronously.
- Durable code execution, tasks in the workflow are durable with at-least once delivery semantics offered by the queues
- Agentic workflows Conductor workflows can be fully dynamic, LLMs can plan and design workflows that can be executed by Conductor server at runtime. No compile, deploy cycle required.
- Agentic RAG Easy to build RAG pipelines with LLM and Vector DB integrations
One-liner for macOS / Linux
curl -sSL https://raw.githubusercontent.com/conductor-oss/conductor/main/conductor_server.sh | shOne-liner for Windows PowerShell:
irm https://raw.githubusercontent.com/conductor-oss/conductor/main/conductor_server.ps1 | iex| Operating System | Interactive | Custom Port & Version |
|---|---|---|
| macOS / Linux | ./conductor_server.sh |
./conductor_server.sh 9090 3.22.0 |
| Windows (CMD) | conductor_server.bat |
conductor_server.bat 9090 3.22.0 |
| Windows (PowerShell) | .\conductor_server.ps1 |
.\conductor_server.ps1 -Port 9090 -Version 3.22.0 |
Each script will:
- Download the Conductor server JAR (if not already present)
- Prompt for parameters if running interactively and not provided
- Start the server with
java -jar
Set CONDUCTOR_HOME to specify where the JAR is stored (defaults to current directory).
Or run with Docker:
docker run -p 8080:8080 conductoross/conductor:latestAccess the UI at http://localhost:8080
| Language | Repository | Installation |
|---|---|---|
| ☕ Java | conductor-oss/java-sdk | Maven Central |
| 🐍 Python | conductor-oss/python-sdk | pip install conductor-python |
| 🟨 JavaScript | conductor-oss/javascript-sdk | npm install @io-orkes/conductor-javascript |
| 🐹 Go | conductor-oss/go-sdk | go get github.com/conductor-sdk/conductor-go |
| 🟣 C# | conductor-oss/csharp-sdk | dotnet add package conductor-csharp |
| 🦀 Rust | conductor-oss/rust-sdk | (incubating - build locally) |
Check-out the Conductor docs for additional details
- Join the Conductor Slack channel for community discussions and support.
- Post your question at: https://community.orkes.io/
Conductor is quite flexible and works with the majority of the popular databases and search systems. Use this table as a reference for various backend configurations.
| Backend | Configuration |
|---|---|
| Redis + ES7 (default) | config-redis.properties |
| Redis + OS | config-redis-os.properties |
| Postgres | config-postgres.properties |
| Postgres + ES7 | config-postgres-es7.properties |
| MySQL + ES7 | config-mysql.properties |
Build from source and deploy Conductor as a standalone Java application. Configure databases, queues, and environment settings as needed. Follow the Building Conductor From Source guide included in this repo.
- Install Docker Desktop (Mac, Windows/PC, Linux)
- Install Java (JDK) 21 or newer
- Node 18 for the UI to build
git clone https://github.com/conductor-oss/conductor
cd conductor
./gradlw build
# (optional) Build UI
# ./build_ui.sh
# once the build is completed, you can start local server
cd server
../gradlew bootRunIs this the same as Netflix Conductor?
Yes. Conductor OSS is the continuation of the original Netflix Conductor repository after Netflix contributed the project to the open-source foundation.
Is this project actively maintained?
Yes. Orkes is the primary maintainer of this repository and offers an enterprise SaaS platform for Conductor across all major cloud providers.
Can Conductor scale to handle my workload?
Absolutely. Conductor was built at Netflix to handle massive scale and has been battle-tested in production environments processing millions of workflows. It scales horizontally to meet virtually any demand.
Does Conductor support durable code execution?
Yes. Conductor pioneered durable execution patterns, ensuring workflows complete reliably even in the face of infrastructure failures, process crashes, or network issues.
Are workflows always asynchronous?
No. While Conductor excels at asynchronous orchestration, it also supports synchronous workflow execution when immediate results are required.
Do I need to use a Conductor-specific framework?
Not at all. Conductor is language and framework agnostic. Use your preferred language and framework—our SDKs provide native integration for Java, Python, JavaScript, Go, C#, and more.
Is Conductor a low-code/no-code platform?
No. Conductor is designed for developers who write code. While workflows can be defined in JSON, the power of Conductor comes from building workers and tasks in your preferred programming language using our SDKs.
Can Conductor handle complex workflows?
Conductor was specifically designed for complex orchestration. It supports advanced patterns including nested loops, dynamic branching, sub-workflows, and workflows with thousands of tasks—complexity that other orchestration tools struggle to handle.
Is Netflix Conductor abandoned?
No. The original Netflix repository has transitioned to Conductor OSS, which is the new home for the project. Active development and maintenance continues here.
Is Orkes Conductor compatible with Conductor OSS?
100% compatible. Orkes Conductor is built on top of Conductor OSS, ensuring full compatibility between the open-source version and the enterprise offering.
We welcome contributions from everyone!
- Report Issues: Found a bug or have a feature request? Open an issue on GitHub.
- Contribute code: Check out our Contribution Guide, and explore our Good first issues for beginner-friendly tasks to tackle first.
- Contribute to our Docs: Contribute edits or updates to keep our documentation in great shape for the community.
See the roadmap for the Conductor If you would like to participate in the roadmap and development, please reach out.
Conductor is licensed under the Apache 2.0 License ©
