microsoft/conductor

A CLI tool for defining and running multi-agent workflows with the GitHub Copilot SDK and Anthropic Agents SDK.

Conductor – a CLI for repeatable, version‑controlled multi‑agent workflows

What it is – Conductor is a command‑line tool that lets you describe a pipeline of AI agents (Copilot, Claude, etc.) in a single YAML file and run it locally, in CI, or in the cloud. The orchestration itself is deterministic (no LLM decides the next step) and the whole workflow definition lives in plain text, so you can version‑control, diff, and review it just like code.

Why it matters – Building reliable AI‑powered pipelines (code‑review bots, research‑then‑synthesize loops, plan‑then‑implement cycles) is hard because most existing solutions rely on ad‑hoc scripts or manual prompting. Conductor gives you:

  • Repeatability – identical inputs always follow the same path.
  • Deterministic routing – Jinja2‑based conditions decide which agent runs next, without spending tokens on orchestration.
  • Source‑control friendliness – workflows are YAML files that can be reviewed in pull requests.

Key features

Feature What it does
YAML‑based workflow definition Declare agents, prompts, routing, and sub‑workflows in a readable file.
Multiple AI providers GitHub Copilot, Anthropic Claude, Claude Agent SDK, NousResearch Hermes, Azure Container Apps sandbox (experimental).
Parallel & dynamic execution Run groups of agents concurrently; for_each lets you fan‑out over a list at runtime.
Sub‑workflow composition Reuse workflow fragments with templated input mapping.
Script & set steps Run shell commands or compute Jinja2 values without invoking an LLM.
Human‑in‑the‑loop gates Pause for manual decisions via Markdown prompts, clickable file links, or the web dashboard.
Safety limits Max‑iteration caps and timeout enforcement to avoid runaway runs.
Web dashboard Real‑time DAG visualization, live streaming of agent output, and in‑browser human gates.
Fleet Manager TUI Terminal UI that lists every running workflow, shows status, tokens, cost, and lets you answer gates or launch new runs.
Validation Pre‑run checks for missing inputs, stale template references, and undeclared dependencies.

Typical use cases

  • Code‑review pipelines – a Copilot agent writes a review, a Claude agent summarizes, a human gate approves before merge.
  • Research‑then‑synthesize – one agent gathers sources, another drafts a report, a final agent formats it.
  • Plan‑then‑implement loops – an agent proposes a design, a second agent writes code in an isolated Azure Container Apps sandbox, a third validates the result.

Installation (quick)

# macOS / Linux
curl -sSfL https://aka.ms/conductor/install.sh | sh
# Windows (PowerShell)
irm https://aka.ms/conductor/install.ps1 | iex

The script installs the uv package manager (if needed), pulls the latest release, and creates an isolated virtual‑env with all dependencies. Updates are performed with conductor update (or the same install script with --apply).

Running a workflow

  1. Write a YAML file (e.g., my-workflow.yaml).
  2. Execute:
conductor run my-workflow.yaml --input question="What is Python?"
  1. The CLI prints the final JSON output, and you can optionally launch the web dashboard with --web or --web-bg to watch the DAG live.

Example snippet (from the README)

workflow:
  name: simple-qa
  entry_point: answerer
agents:
  - name: answerer
    model: gpt-5.5
    prompt: |
      Answer the following question:
      {{ workflow.input.question }}
    output:
      answer:
        type: string
    routes:
      - to: $end
output:
  answer: "{{ answerer.output.answer }}"

Provider configuration – set the provider at the top of the file, e.g.:

workflow:
  runtime:
    provider: copilot   # or openai, claude, hermes, aca, etc.
    default_model: gpt-5.5

Authentication follows the usual environment‑variable conventions (OPENAI_API_KEY, ANTHROPIC_API_KEY, GitHub CLI login for Copilot, etc.).

Extensibility – Conductor ships a skill for Claude Code and GitHub Copilot CLI, allowing the same workflow schema to be used inside those assistants. Experimental providers (Claude Agent SDK, Hermes, ACA) can be added via uv add or pip install as documented.

Bottom line – Conductor turns LLM‑driven pipelines into first‑class, testable software artifacts. By keeping orchestration deterministic and version‑controlled, it makes AI‑augmented automation suitable for CI/CD, team collaboration, and production‑grade workloads.

Related

  • Project
  • Project
  • Project
  • Project
  • Project