Skip to content

Core Concepts

What is Conductor?

Applies to both editions

This page describes the Conductor engine that powers both open-source Conductor and Orkes Conductor. Operational defaults mentioned here, such as Redis or Elasticsearch, are specifics of the open-source distribution; Orkes Conductor deployments run the Orkes platform stack.

Conductor is an open source orchestration engine that runs workflows durably. A workflow is a series of tasks that can branch, loop, and run in parallel. Conductor decides which task runs next, records the result of every step, and retries or resumes when a step fails. A crash or restart never loses progress.

Responsibilities are split between the Conductor server and your own code:

  • The server orchestrates. It runs as its own service, self-hosted or managed in the cloud. It schedules tasks, enforces retries and timeouts, and persists state after every step. Orchestration logic stays out of your application code.
  • Your workers execute. They run in your own infrastructure, inside the services, containers, or functions you already deploy. Business logic is a plain function written in any language with a Conductor SDK. Workers poll the server for tasks and report results, so they need no inbound ports.
  • System tasks are built in. They run inside the server itself. Common steps such as HTTP calls, events, and LLM calls need no worker code.
%%{init: {'look': 'handDrawn', 'theme': 'base', 'themeVariables': {'primaryColor': '#eef2ff', 'primaryBorderColor': '#1e40af', 'primaryTextColor': '#1e293b', 'lineColor': '#1e3a8a', 'edgeLabelBackground': '#ffffff', 'clusterBkg': '#fbfcff', 'clusterBorder': '#2563eb', 'fontFamily': '-apple-system, system-ui, Segoe UI, Roboto, Helvetica, Arial, sans-serif', 'fontSize': '15px'}, 'flowchart': {'nodeSpacing': 50, 'rankSpacing': 58, 'padding': 14, 'htmlLabels': true, 'curve': 'basis'}}}%%
flowchart LR
    def["Workflow definition<br/>(JSON or code)"] --> engine
    subgraph server["Conductor server"]
        engine["Schedules tasks, persists every state transition,<br/>handles retries, timeouts, and flow control"]
    end
    engine -- "queues tasks" --> queue[["Task queues"]]
    workers["Your workers<br/>(any language)"] -- "poll for work" --> queue
    workers -- "report results" --> engine

Workflow definitions are JSON. Version them in source control, generate them from code, or let an LLM create and modify them at runtime.

AI work runs the same way. LLM calls, tool use, and agents are workflow tasks, with the same retries, persistence, and observability as every other step.

What can Conductor do?

Start Task A Task B Task C End Start Task A SwitchCase Task B Task C End Start Task A SwitchCase Task B Do While Loop Task C End Start Task A SwitchCase Task B Task D Do While Loop Task C End Start Task A Worker AMicroservice Task B Worker BServerless Task C Worker CLegacy App End Start HTTP: Call API endpoint Event: Write to Kafka Inline: Execute JS End Start Search News Index Get Contextual Answer End Start Switch DefaultApproval HumanApproval End Start Task A ! Retry on failure Task B Timeout afterx seconds Task C On failure End Start Task A Task B Task C FAILED Restart Rerun Retry ConductorWorkflow Engine Kafka NATS SQS AMQP Webhooks Start Task A Switch Task D View inputs, pull logs, restart from here End Load Balancer Instance 1API Server+ Sweeper Instance 2API Server+ Sweeper Shared Backends Database · Queue · Index · Lock Conductor Workflow AGENT Task Conductor AgentBuild and run A2A AgentOrchestrate remotely Done

Core building blocks

  • Workflows — The blueprint of a process flow. A workflow is a JSON document that describes a directed graph of tasks, their dependencies, input/output mappings, and failure handling policies.
  • Tasks — The basic building blocks of a Conductor workflow. Tasks can be system tasks (executed by the engine) or worker tasks (executed by external workers polling for work).
  • Workers — The code that executes tasks in a Conductor workflow. Workers are language-agnostic processes that poll the Conductor server, execute business logic, and report results back.
  • Agents (AGENT task) — Invoke a deployed Conductor Agent or a remote A2A agent as a durable step inside a workflow.

Supported platforms and integrations

A quick reference for what Conductor supports out of the box:

Area Supported
Worker SDKs Java, Python, Go, JavaScript, C#, Clojure, Ruby, Rust
LLM providers 14+, including OpenAI, Anthropic, Gemini, Bedrock, Mistral, and Azure OpenAI
Tool calling MCP (Model Context Protocol)
Vector databases Pinecone, pgvector, MongoDB Atlas
Event brokers Kafka, NATS JetStream, SQS, AMQP, Azure Service Bus
Persistence backends PostgreSQL, MySQL, Redis, Cassandra, SQLite

Deep dives