<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Designing Hierarchical Multi-Agent Systems on Databricks with Supervisor Agent in Community Articles</title>
    <link>https://community.databricks.com/t5/community-articles/designing-hierarchical-multi-agent-systems-on-databricks-with/m-p/166750#M1478</link>
    <description>&lt;H2&gt;&lt;FONT face="times new roman,times" size="4"&gt;When does one AI agent stop being enough?&lt;/FONT&gt;&lt;/H2&gt;&lt;P&gt;&lt;FONT face="times new roman,times" size="4"&gt;Many enterprise AI applications begin with a simple architecture:&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;User → LLM → Answer&lt;/FONT&gt;&lt;/PRE&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;As applications become more capable, the pattern usually evolves into:&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;User → Agent → Tools → Answer&lt;/FONT&gt;&lt;/PRE&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;Now the agent can decide when to query data, search documents, call an API, execute a function, or use another specialised capability.&amp;nbsp;This works well—until the number of capabilities starts growing.&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Imagine an enterprise assistant that needs to answer questions involving:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;structured business data&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;internal policies and documentation&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;customer support systems&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;operational APIs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;external services&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;multi-step investigations&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The obvious solution might be to give a single agent access to everything.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;But eventually, the problem is no longer simply &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;"Can the agent call tools?"&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;STRONG&gt;The problem becomes:&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;How should the system decide which capability is responsible for which part of a complex request?&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;That is where multi-agent orchestration becomes useful.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;And when the number of agents and domains continues to grow, a flat multi-agent architecture can eventually face the same scaling problem that affected the original single agent.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is where a &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;hierarchical multi-agent architecture&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; becomes interesting.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;In this article, I'll walk through how such an architecture can be designed using &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;Databricks Supervisor Agent&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;, with domain-level supervisors coordinating specialised Databricks agents and tools.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The problem: more capabilities create a larger orchestration problem&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Consider a straightforward business question:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;What was our total revenue last quarter?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A single analytical capability can handle this.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Now consider a more realistic enterprise question:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Which product had the highest return rate last quarter, what does our warranty policy say about that product, and are there any unresolved customer issues related to it?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This request spans multiple domains.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;1. Analytics&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Determine which product has the highest return rate.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;2. &lt;/SPAN&gt;Enterprise knowledge&lt;/FONT&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Find the warranty policy relevant to that product.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;3. Operations&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Retrieve unresolved customer issues associated with it.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;A single agent could theoretically have access to all these capabilities.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;However, as the toolset grows, the agent increasingly needs to reason about:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Which capability should I use?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Which tool should I call first?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Can multiple capabilities run independently?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Does the output from one agent become input for another?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Which results should be combined?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;When is the investigation complete?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;At that point, we are no longer solving a simple tool-calling problem.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;We are solving an &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;orchestration problem&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;From a single agent to a team of agents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The first step is often specialization.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Instead of one agent handling everything, we might create:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Supervisor
    |
    +── Analytics Agent
    +── Knowledge Agent
    +── Operations Agent&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is already an improvement.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Each specialist can have a clearer responsibility:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Analytics Agent focuses on structured data.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Knowledge Agent focuses on documents and policies.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Operations Agent focuses on enterprise systems and actions.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;But what happens when the organization has many more domains?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Root Supervisor
    |
    +── Finance
    +── Sales
    +── Customer Service
    +── Operations
    +── HR
    +── Legal
    +── Research
    +── ...&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The root supervisor now needs to understand every specialist's purpose and decide how to route requests across all of them.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;We have effectively moved the complexity upward.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;That is where hierarchy can help.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Why this architecture maps well to Databricks&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Databricks Supervisor Agent is designed to coordinate specialized agents and tools across complex tasks.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Depending on the use case, a supervisor can coordinate capabilities such as:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Genie Agents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Knowledge Assistant endpoints&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;model serving endpoints&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Unity Catalog functions&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;MCP servers&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;custom agents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;other Supervisor Agents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is particularly interesting for hierarchical architectures because a Supervisor Agent can itself become part of a larger orchestration structure.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;That gives us a natural separation between:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Enterprise-level orchestration&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;and:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Domain-level orchestration&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Databricks also provides governance and access-control mechanisms around the underlying agents and tools, so orchestration does not mean bypassing the permissions associated with the resources being used.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Designing the hierarchy&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A common mistake in multi-agent systems is creating multiple agents simply because a multi-agent architecture sounds more advanced.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;More agents do not automatically produce a better system.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;The goal should be to create &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;clear boundaries of responsibility&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For this example, let's use three domain supervisors.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;1. Analytics Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This supervisor handles questions involving:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;revenue&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;sales&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;orders&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;products&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;customers&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;KPIs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;trends&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;etc...&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A possible architecture is:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics Supervisor
          |
         v
   Genie Agent
          |
         v
  Structured Data&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The important design principle is that the Analytics Supervisor does not necessarily need to generate SQL itself.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Its responsibility is to determine:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;whether the request belongs to the analytics domain,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;what information needs to be retrieved,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;whether additional analytical investigation is required,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;how the analytical result should be returned to the higher-level supervisor.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The underlying Genie capability can handle the structured-data interaction.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;2. Knowledge Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This supervisor handles enterprise knowledge such as:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;company policies&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;product documentation&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;internal procedures&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;FAQs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;warranty information&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;operational guidelines&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A possible structure is:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Knowledge Supervisor
          |
          v
 Knowledge Assistant
          |
          v
 Enterprise Documents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This keeps document-oriented reasoning separate from structured-data analysis.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;That separation becomes useful when a request requires both numerical evidence and policy or documentation context.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;3. Operations Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This supervisor handles interactions with operational systems.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;customer support tickets&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;inventory&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;product status&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;enterprise APIs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;external services&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A possible structure could be:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Operations Supervisor
          |
          v
      MCP
          |
    +-----+-----+------+
    |         |        |          |
Tickets Inventory Status APIs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The MCP layer can expose domain-specific capabilities to the supervisor while keeping the operational integrations behind a clear boundary.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;get_open_tickets()
get_inventory()
get_product_status()&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The role of the Enterprise Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Enterprise Supervisor sits above the domain supervisors.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Its responsibility should be fundamentally different from that of the specialists.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A good Enterprise Supervisor should:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Understand the user's overall request.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Identify the domains involved.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Break the request into delegable tasks.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Route tasks to the appropriate domain supervisor.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Pass relevant context between domains when necessary.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Coordinate dependent and independent work.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Decide whether further investigation is required.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Synthesise the final answer.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Conceptually:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;                    User Question
                          |
                          v
                Enterprise Supervisor
                          |
          +---------------+---------------+
          |                      |                      |
          v                    v                     v
    Analytics         Knowledge       Operations
    Supervisor        Supervisor      Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is the central architectural separation:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The enterprise layer manages domains. Domain layers manage specialized capabilities.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Building the architecture incrementally&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A practical implementation should not begin by creating the entire hierarchy at once.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Build and validate each layer separately.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Step 1: Build the specialist capabilities&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Start with the underlying capabilities:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;a Genie Agent for structured analytics,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;a Knowledge Assistant for enterprise documents,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;an MCP-based capability for operational systems.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Before introducing orchestration, make sure each capability works independently.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics question → Genie
Policy question → Knowledge Assistant
Operational question → MCP tool&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;If the specialists are unreliable individually, adding a supervisor will not solve the underlying problem.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Step 2: Create domain supervisors&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Next, create supervisors for each domain.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics Supervisor
    → analytics capabilities only

Knowledge Supervisor
    → knowledge capabilities only

Operations Supervisor
    → operational capabilities only&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The objective is to keep each supervisor's decision space focused.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;Avoid giving every domain supervisor access to every tool.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;Specialization is the point.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Step 3: Create the Enterprise Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Now add the domain supervisors as capabilities of the Enterprise Supervisor.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;At this layer, the descriptions become extremely important.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Enterprise Supervisor should understand clearly when each domain is appropriate.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Use for questions requiring numerical analysis, business metrics, trends, comparisons, aggregations, KPIs, sales, revenue, orders, products, or other structured business data.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Knowledge Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Use for questions about company policies, product documentation, procedures, FAQs, warranty information, and internal knowledge.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Operations Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Use for questions requiring information or actions from operational systems, support tickets, inventory, product status, or external enterprise services.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;These boundaries should overlap as little as possible.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Step 4: Design for dependencies, not just routing&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is one improvement I would strongly recommend when building a real hierarchical system.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Not every task is simply:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Route → Execute → Return&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Some tasks have dependencies.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Find product with highest return rate
              |
              v
Use product as input
              |
      +-------+-------+
      |               |
      v               v
Warranty lookup   Ticket lookup
      |               |
      +-------+-------+
              |
              v
        Final synthesis&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The first analytical result becomes context for the next two domain tasks.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;This means evaluation should test not only whether the system selected the correct agent, but also whether it correctly passed information between agents.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="hierarchical-supervisor.jpg" style="width: 671px;"&gt;&lt;img src="https://community.databricks.com/t5/image/serverpage/image-id/30383i1F82B9D32A7CE9E2/image-size/large?v=v2&amp;amp;px=999" role="button" title="hierarchical-supervisor.jpg" alt="hierarchical-supervisor.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;How should a hierarchical agent be evaluated?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;I would evaluate the architecture across several dimensions.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;1. Routing accuracy&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Did the Enterprise Supervisor select the correct domain?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Correct domain selections
-------------------------
Total routing decisions&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;2. Delegation accuracy&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Once inside a domain, did the domain supervisor select the correct specialist capability?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics Supervisor
        |
        +── Correctly used Genie
        |
        +── Did not incorrectly invoke an operational tool&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;3. Dependency accuracy&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Did the system correctly pass information between agents?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics result:
XYZ-Phone Pro

↓

Knowledge request:
Find the warranty policy for XYZ-Phone Pro&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This becomes especially important for multi-step investigations.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;4. Tool selection&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Was the correct underlying tool invoked?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Correct routing to the Analytics Supervisor is not enough if the Analytics Supervisor then chooses the wrong capability.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;5. Unnecessary calls&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Did the system invoke agents or tools that were not required?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A good multi-agent architecture should not simply maximize collaboration.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;It should use the &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;minimum necessary capabilities&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; to complete the task reliably.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;6. Final answer quality&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Finally:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Is the answer correct?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Is it grounded in the results returned by the relevant systems?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Does it combine evidence correctly?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Are contradictions between agents handled properly?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Does the final answer answer the user's actual question?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;When does hierarchy become useful?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A hierarchical architecture becomes more attractive when:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;domains contain multiple specialized capabilities,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;each domain requires its own orchestration logic,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;the number of agents is growing,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;the root supervisor is becoming overloaded,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;different teams own different capabilities,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;workflows naturally contain multiple levels of responsibility,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;tasks require cross-domain dependencies.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The architecture should follow the problem.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;Do not build a hierarchy because multi-agent systems look more sophisticated. Build one when hierarchy reduces the orchestration complexity of the problem.&lt;/FONT&gt;&lt;/PRE&gt;&lt;H5&gt;&amp;nbsp;&lt;/H5&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Final thoughts&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The future of enterprise AI is unlikely to be a single massive agent with an endlessly growing list of tools.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;But that does not mean every problem requires a large hierarchy of agents either.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The important architectural question is:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;STRONG&gt;&lt;SPAN&gt;Where should orchestration responsibility live as the number of capabilities grows?&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Databricks provides a useful foundation for exploring this question through Supervisor Agent and its ability to coordinate specialized agents and tools across domains.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;My approach would be to start simple:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Single Agent&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Then move to:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Flat Multi-Agent&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;And introduce:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Hierarchical Multi-Agent&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;only when the growing number of domains and capabilities creates an orchestration problem that hierarchy actually helps solve.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;The best architecture is not the one with the most agents.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;It is the one that gives every layer a clear responsibility.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN&gt;AI assistance disclosure:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; This article was AI-assisted for editorial restructuring and language refinement. The architecture, examples, technical claims, and final content were reviewed and verified by the author.&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Sat, 29 Aug 2026 11:08:32 GMT</pubDate>
    <dc:creator>Dwaipayan2001</dc:creator>
    <dc:date>2026-08-29T11:08:32Z</dc:date>
    <item>
      <title>Designing Hierarchical Multi-Agent Systems on Databricks with Supervisor Agent</title>
      <link>https://community.databricks.com/t5/community-articles/designing-hierarchical-multi-agent-systems-on-databricks-with/m-p/166750#M1478</link>
      <description>&lt;H2&gt;&lt;FONT face="times new roman,times" size="4"&gt;When does one AI agent stop being enough?&lt;/FONT&gt;&lt;/H2&gt;&lt;P&gt;&lt;FONT face="times new roman,times" size="4"&gt;Many enterprise AI applications begin with a simple architecture:&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;User → LLM → Answer&lt;/FONT&gt;&lt;/PRE&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;As applications become more capable, the pattern usually evolves into:&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;User → Agent → Tools → Answer&lt;/FONT&gt;&lt;/PRE&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;Now the agent can decide when to query data, search documents, call an API, execute a function, or use another specialised capability.&amp;nbsp;This works well—until the number of capabilities starts growing.&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Imagine an enterprise assistant that needs to answer questions involving:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;structured business data&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;internal policies and documentation&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;customer support systems&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;operational APIs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;external services&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;multi-step investigations&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The obvious solution might be to give a single agent access to everything.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;But eventually, the problem is no longer simply &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;"Can the agent call tools?"&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;STRONG&gt;The problem becomes:&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;How should the system decide which capability is responsible for which part of a complex request?&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;That is where multi-agent orchestration becomes useful.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;And when the number of agents and domains continues to grow, a flat multi-agent architecture can eventually face the same scaling problem that affected the original single agent.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is where a &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;hierarchical multi-agent architecture&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; becomes interesting.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;In this article, I'll walk through how such an architecture can be designed using &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;Databricks Supervisor Agent&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;, with domain-level supervisors coordinating specialised Databricks agents and tools.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The problem: more capabilities create a larger orchestration problem&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Consider a straightforward business question:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;What was our total revenue last quarter?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A single analytical capability can handle this.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Now consider a more realistic enterprise question:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Which product had the highest return rate last quarter, what does our warranty policy say about that product, and are there any unresolved customer issues related to it?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This request spans multiple domains.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;1. Analytics&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Determine which product has the highest return rate.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;2. &lt;/SPAN&gt;Enterprise knowledge&lt;/FONT&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Find the warranty policy relevant to that product.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;3. Operations&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Retrieve unresolved customer issues associated with it.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;A single agent could theoretically have access to all these capabilities.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;However, as the toolset grows, the agent increasingly needs to reason about:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Which capability should I use?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Which tool should I call first?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Can multiple capabilities run independently?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Does the output from one agent become input for another?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Which results should be combined?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;When is the investigation complete?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;At that point, we are no longer solving a simple tool-calling problem.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;We are solving an &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;orchestration problem&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;From a single agent to a team of agents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The first step is often specialization.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Instead of one agent handling everything, we might create:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Supervisor
    |
    +── Analytics Agent
    +── Knowledge Agent
    +── Operations Agent&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is already an improvement.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Each specialist can have a clearer responsibility:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Analytics Agent focuses on structured data.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Knowledge Agent focuses on documents and policies.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Operations Agent focuses on enterprise systems and actions.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;But what happens when the organization has many more domains?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Root Supervisor
    |
    +── Finance
    +── Sales
    +── Customer Service
    +── Operations
    +── HR
    +── Legal
    +── Research
    +── ...&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The root supervisor now needs to understand every specialist's purpose and decide how to route requests across all of them.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;We have effectively moved the complexity upward.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;That is where hierarchy can help.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Why this architecture maps well to Databricks&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Databricks Supervisor Agent is designed to coordinate specialized agents and tools across complex tasks.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Depending on the use case, a supervisor can coordinate capabilities such as:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Genie Agents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Knowledge Assistant endpoints&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;model serving endpoints&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Unity Catalog functions&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;MCP servers&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;custom agents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;other Supervisor Agents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is particularly interesting for hierarchical architectures because a Supervisor Agent can itself become part of a larger orchestration structure.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;That gives us a natural separation between:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Enterprise-level orchestration&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;and:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Domain-level orchestration&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Databricks also provides governance and access-control mechanisms around the underlying agents and tools, so orchestration does not mean bypassing the permissions associated with the resources being used.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Designing the hierarchy&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A common mistake in multi-agent systems is creating multiple agents simply because a multi-agent architecture sounds more advanced.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;More agents do not automatically produce a better system.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;The goal should be to create &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;clear boundaries of responsibility&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For this example, let's use three domain supervisors.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;1. Analytics Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This supervisor handles questions involving:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;revenue&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;sales&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;orders&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;products&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;customers&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;KPIs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;trends&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;etc...&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A possible architecture is:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics Supervisor
          |
         v
   Genie Agent
          |
         v
  Structured Data&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The important design principle is that the Analytics Supervisor does not necessarily need to generate SQL itself.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Its responsibility is to determine:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;whether the request belongs to the analytics domain,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;what information needs to be retrieved,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;whether additional analytical investigation is required,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;how the analytical result should be returned to the higher-level supervisor.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The underlying Genie capability can handle the structured-data interaction.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;2. Knowledge Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This supervisor handles enterprise knowledge such as:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;company policies&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;product documentation&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;internal procedures&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;FAQs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;warranty information&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;operational guidelines&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A possible structure is:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Knowledge Supervisor
          |
          v
 Knowledge Assistant
          |
          v
 Enterprise Documents&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This keeps document-oriented reasoning separate from structured-data analysis.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;That separation becomes useful when a request requires both numerical evidence and policy or documentation context.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;3. Operations Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This supervisor handles interactions with operational systems.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;customer support tickets&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;inventory&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;product status&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;enterprise APIs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;external services&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A possible structure could be:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Operations Supervisor
          |
          v
      MCP
          |
    +-----+-----+------+
    |         |        |          |
Tickets Inventory Status APIs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The MCP layer can expose domain-specific capabilities to the supervisor while keeping the operational integrations behind a clear boundary.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;get_open_tickets()
get_inventory()
get_product_status()&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The role of the Enterprise Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Enterprise Supervisor sits above the domain supervisors.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Its responsibility should be fundamentally different from that of the specialists.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A good Enterprise Supervisor should:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Understand the user's overall request.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Identify the domains involved.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Break the request into delegable tasks.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Route tasks to the appropriate domain supervisor.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Pass relevant context between domains when necessary.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Coordinate dependent and independent work.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Decide whether further investigation is required.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Synthesise the final answer.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Conceptually:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;                    User Question
                          |
                          v
                Enterprise Supervisor
                          |
          +---------------+---------------+
          |                      |                      |
          v                    v                     v
    Analytics         Knowledge       Operations
    Supervisor        Supervisor      Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is the central architectural separation:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The enterprise layer manages domains. Domain layers manage specialized capabilities.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Building the architecture incrementally&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A practical implementation should not begin by creating the entire hierarchy at once.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Build and validate each layer separately.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Step 1: Build the specialist capabilities&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Start with the underlying capabilities:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;a Genie Agent for structured analytics,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;a Knowledge Assistant for enterprise documents,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;an MCP-based capability for operational systems.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Before introducing orchestration, make sure each capability works independently.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics question → Genie
Policy question → Knowledge Assistant
Operational question → MCP tool&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;If the specialists are unreliable individually, adding a supervisor will not solve the underlying problem.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Step 2: Create domain supervisors&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Next, create supervisors for each domain.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics Supervisor
    → analytics capabilities only

Knowledge Supervisor
    → knowledge capabilities only

Operations Supervisor
    → operational capabilities only&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The objective is to keep each supervisor's decision space focused.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;Avoid giving every domain supervisor access to every tool.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;Specialization is the point.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Step 3: Create the Enterprise Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Now add the domain supervisors as capabilities of the Enterprise Supervisor.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;At this layer, the descriptions become extremely important.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The Enterprise Supervisor should understand clearly when each domain is appropriate.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Use for questions requiring numerical analysis, business metrics, trends, comparisons, aggregations, KPIs, sales, revenue, orders, products, or other structured business data.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Knowledge Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Use for questions about company policies, product documentation, procedures, FAQs, warranty information, and internal knowledge.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;H3&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Operations Supervisor&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Use for questions requiring information or actions from operational systems, support tickets, inventory, product status, or external enterprise services.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;These boundaries should overlap as little as possible.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Step 4: Design for dependencies, not just routing&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This is one improvement I would strongly recommend when building a real hierarchical system.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Not every task is simply:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Route → Execute → Return&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Some tasks have dependencies.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Find product with highest return rate
              |
              v
Use product as input
              |
      +-------+-------+
      |               |
      v               v
Warranty lookup   Ticket lookup
      |               |
      +-------+-------+
              |
              v
        Final synthesis&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The first analytical result becomes context for the next two domain tasks.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;This means evaluation should test not only whether the system selected the correct agent, but also whether it correctly passed information between agents.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="hierarchical-supervisor.jpg" style="width: 671px;"&gt;&lt;img src="https://community.databricks.com/t5/image/serverpage/image-id/30383i1F82B9D32A7CE9E2/image-size/large?v=v2&amp;amp;px=999" role="button" title="hierarchical-supervisor.jpg" alt="hierarchical-supervisor.jpg" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;How should a hierarchical agent be evaluated?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;I would evaluate the architecture across several dimensions.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;1. Routing accuracy&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Did the Enterprise Supervisor select the correct domain?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Correct domain selections
-------------------------
Total routing decisions&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;2. Delegation accuracy&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Once inside a domain, did the domain supervisor select the correct specialist capability?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics Supervisor
        |
        +── Correctly used Genie
        |
        +── Did not incorrectly invoke an operational tool&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;3. Dependency accuracy&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Did the system correctly pass information between agents?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Analytics result:
XYZ-Phone Pro

↓

Knowledge request:
Find the warranty policy for XYZ-Phone Pro&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;This becomes especially important for multi-step investigations.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;4. Tool selection&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Was the correct underlying tool invoked?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Correct routing to the Analytics Supervisor is not enough if the Analytics Supervisor then chooses the wrong capability.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;5. Unnecessary calls&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Did the system invoke agents or tools that were not required?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A good multi-agent architecture should not simply maximize collaboration.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;It should use the &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;minimum necessary capabilities&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; to complete the task reliably.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;H2&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;6. Final answer quality&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H2&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Finally:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Is the answer correct?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Is it grounded in the results returned by the relevant systems?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Does it combine evidence correctly?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Are contradictions between agents handled properly?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Does the final answer answer the user's actual question?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;When does hierarchy become useful?&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;A hierarchical architecture becomes more attractive when:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;domains contain multiple specialized capabilities,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;each domain requires its own orchestration logic,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;the number of agents is growing,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;the root supervisor is becoming overloaded,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;different teams own different capabilities,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;workflows naturally contain multiple levels of responsibility,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;LI&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;tasks require cross-domain dependencies.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The architecture should follow the problem.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;Do not build a hierarchy because multi-agent systems look more sophisticated. Build one when hierarchy reduces the orchestration complexity of the problem.&lt;/FONT&gt;&lt;/PRE&gt;&lt;H5&gt;&amp;nbsp;&lt;/H5&gt;&lt;H1&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Final thoughts&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/H1&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The future of enterprise AI is unlikely to be a single massive agent with an endlessly growing list of tools.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;But that does not mean every problem requires a large hierarchy of agents either.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;The important architectural question is:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;STRONG&gt;&lt;SPAN&gt;Where should orchestration responsibility live as the number of capabilities grows?&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Databricks provides a useful foundation for exploring this question through Supervisor Agent and its ability to coordinate specialized agents and tools across domains.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;My approach would be to start simple:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Single Agent&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Then move to:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Flat Multi-Agent&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;And introduce:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;PRE&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;Hierarchical Multi-Agent&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;only when the growing number of domains and capabilities creates an orchestration problem that hierarchy actually helps solve.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;The best architecture is not the one with the most agents.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;It is the one that gives every layer a clear responsibility.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN&gt;AI assistance disclosure:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; This article was AI-assisted for editorial restructuring and language refinement. The architecture, examples, technical claims, and final content were reviewed and verified by the author.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 29 Aug 2026 11:08:32 GMT</pubDate>
      <guid>https://community.databricks.com/t5/community-articles/designing-hierarchical-multi-agent-systems-on-databricks-with/m-p/166750#M1478</guid>
      <dc:creator>Dwaipayan2001</dc:creator>
      <dc:date>2026-08-29T11:08:32Z</dc:date>
    </item>
  </channel>
</rss>

