Conductor is a Java workflow orchestration server, originally from Netflix, that persists every task and runs versioned JSON workflow graphs. Workers in Java, Python, Go, JavaScript, C#, Ruby or Rust poll for tasks, while built-in tasks cover LLM chat, MCP tool discovery and calls, human approval, loops, forks and sub-workflows. It runs on Redis, Postgres or MySQL, with Elasticsearch or OpenSearch for indexing.
Who it is for: Backend teams needing durable orchestration for services and AI agent loops
Strengths
Every step is persisted, with retry, restart, rerun, pause and terminate controls on executions
Workflows are versioned JSON; running executions stay pinned to the version they started on
Native LLM_CHAT_COMPLETE, LIST_MCP_TOOLS and CALL_MCP_TOOL tasks for agent loops
Multiple persistence backends (Redis, Postgres, MySQL) and polyglot worker SDKs
Weaknesses
Requires Java 25+ and a separate index store such as Elasticsearch or OpenSearch
Orchestration is declarative JSON, not code, which suits some teams less than code-first engines
Ruby and Rust SDKs are marked incubating
Not a ready-made agent app; you build agents by composing workflow tasks
What it needs
Java, OpenAI (via llmProvider)
Needs Java 25+, Node.js 16+ (CLI), Redis, Postgres or MySQL, Elasticsearch or OpenSearch
Docker
Quick answers
Is conductor open source?
Yes. Its code is on GitHub under the Apache-2.0 license.
Can you run conductor with Docker?
Yes. Its repository has a Docker setup: a Dockerfile, a Compose file or a published image.