Skip to main content

Quickstart: Multi-Agent Orchestration

This quickstart shows how to run a multi-agent orchestration system where eight specialist agents — each built with a different AI framework — coordinate through Dapr pub/sub to plan events end-to-end. An orchestrator agent discovers available specialists via a shared registry and delegates tasks to plan a complete event.

You will learn how to:

  • Run 8 agents built with different AI frameworks (CrewAI, OpenAI Agents, ADK, Strands, LangGraph, Pydantic AI, and Dapr Agents) in a single orchestration
  • Use Dapr pub/sub for inter-agent communication and task delegation
  • Use a shared agent registry for dynamic agent discovery
  • Monitor multi-agent execution in the Catalyst web console

1. Prerequisites

Before you proceed, ensure you have the following prerequisites installed:

2. Log in to Catalyst

Authenticate to Diagrid Catalyst using the following command:

diagrid login

This command opens a new browser window where you log into Catalyst. Once logged in, you'll be shown a confirmation code (matching the code in your terminal) that you need to confirm.

Confirm your user details are correct using the following command:

diagrid whoami

The expected output contains the name of the organization, your user name, and the Catalyst API endpoint.

3. Clone Quickstart Code

Clone the quickstart code from GitHub:

git clone https://github.com/diagridio/catalyst-quickstarts.git

Navigate to the quickstart directory:

cd catalyst-quickstarts/agents/dapr-agents/orchestrator

4. Configure API Keys

Update dev-multi-agent-orchestration.yaml with your API keys. Replace the placeholder values for each agent's environment variables:

  • OPENAI_API_KEY — used by most agents (CrewAI, Dapr Agents, LangGraph, OpenAI Agents, Pydantic AI, Strands, and the orchestrator)
  • GOOGLE_API_KEY — used by the ADK agent

Also update resources/llm-provider.yaml with your OpenAI API key for the Dapr Agents conversation component:

metadata:
- name: key
value: "YOUR_OPENAI_API_KEY"

5. Install Dependencies

Each agent has its own requirements.txt. Install them all:

cd ../../  # Navigate to agents/ root
for dir in adk crewai dapr-agents/durable-agent dapr-agents/orchestrator langgraph openai-agents pydantic-ai strands; do
(cd $dir && uv venv && source .venv/bin/activate && uv pip install -r requirements.txt)
done
cd dapr-agents/orchestrator # Return to orchestrator directory

6. Run with Catalyst Cloud

The diagrid dev run command creates your Catalyst Cloud project (if needed), provisions resources (App IDs, Components, managed state stores and pubsub), configures environment variables, and sets up the connection between your local environment and Catalyst Cloud.

diagrid dev run -f dev-multi-agent-orchestration.yaml
tip

Wait for all 8 agents to start. You should see log output for each agent confirming it is running before proceeding.

This starts all agents on ports 8001-8008:

PortApp IDAgentFramework
8001adk-agentEntertainment PlannerADK
8002crew-agentVenue ScoutCrewAI
8003dapr-agentInvitations ManagerDapr Agents
8004agent-orchestration-agentEvent CoordinatorDapr Agents
8005langgraph-agentSchedule PlannerLangGraph
8006openai-agentCatering CoordinatorOpenAI Agents
8007pydanticai-agentDecoration PlannerPydantic AI
8008strands-agentBudget AnalystStrands

7. Trigger an Orchestration

Once all agents are running, send an event planning request to the orchestrator:

curl -i -X POST http://localhost:8004/run \
-H "Content-Type: application/json" \
-d '{"task": "Plan a corporate gala in San Francisco for 200 guests on March 15, 2026"}'

The orchestrator will:

  1. Discover all registered agents in the shared registry
  2. Create an execution plan with tasks for each specialist
  3. Delegate entertainment to the Entertainment Planner (ADK)
  4. Delegate venue search to the Venue Scout (CrewAI)
  5. Delegate invitations to the Invitations Manager (Dapr Agents)
  6. Delegate scheduling to the Schedule Planner (LangGraph)
  7. Delegate catering to the Catering Coordinator (OpenAI Agents)
  8. Delegate decorations to the Decoration Planner (Pydantic AI)
  9. Delegate budgeting to the Budget Analyst (Strands)
  10. Synthesize all results into a comprehensive event plan

The response will include a complete event plan with venue, catering, entertainment, decorations, scheduling, budget, and invitation details.

8. View in the Catalyst web console

Open the Workflow viewer in the Catalyst Cloud web console and navigate to the Workflows section. Select the workflow instance that corresponds to your orchestration execution.

The Catalyst workflow visualizer shows the orchestrator delegating tasks to specialist agents. You can inspect every step with its inputs and outputs — including the LLM's delegation decisions, agent responses, and the final synthesized event plan.

9. Clean Up

Stop the running application by pressing Ctrl+C in the terminal where diagrid dev run is running.

Delete the Catalyst Cloud project to clean up all provisioned resources:

diagrid project delete <your-project-name>

Summary

In this quickstart, you:

  • Ran 8 specialist agents built with 7 different AI frameworks in a single orchestration
  • Used Dapr pub/sub for inter-agent communication and a shared registry for agent discovery
  • Observed multi-agent orchestration and workflow visualization in the Catalyst console

Next steps