11.1 Design Multi-Agent Solutions
Key Takeaways
- Multi-agent design in Copilot Studio uses child (inline) agents and connected agents so a main agent can hand off work, scale modular specialists, and respond to user or autonomous triggers.
- Prefer a single agent until tool/topic/agent choice count or description overlap degrades routing—roughly 30–40 action choices is a practical review trigger, not a hard platform limit.
- Use child agents for single-intent subtasks owned by one team without separate auth, deployment, or independent publish; use connected agents for independent ALM, reuse, dedicated models/settings, or multi-team ownership.
- Description quality drives orchestration: the parent treats each connected agent like a tool with a precise purpose statement; vague or overlapping descriptions cause wrong handoffs.
- Multi-agent adds orchestration hops, testing surface, and governance complexity—apply single-response parent patterns, non-overlapping knowledge, and domain-mismatch tests before production.
11.1 Design Multi-Agent Solutions
Quick Answer: Design multi-agent solutions when specialists, reuse, independent ALM, or distinct governance beat one overloaded agent. In Copilot Studio you compose child (inline) agents and connected agents so a main orchestrator hands off work. Invest first in description quality and when-to-split judgment—not in maximum agent count.
AB-620 Domain 2 includes Configure multi-agent collaboration from Copilot Studio, starting with design multi-agent solutions. Microsoft’s official framing: enhance agents by connecting them so they hand off interactions or respond to autonomous triggers, scaling with modular agents tailored to tasks or data sets. Everything you add appears on the main agent’s Agents page.
Mental model: orchestrator + specialists
Think of the main agent as an orchestrator and every child or connected agent as a specialist capability:
- The user (or trigger) reaches the main agent.
- Generative orchestration evaluates topics, tools, knowledge, and other agents using names and descriptions.
- When a specialist matches, the main agent delegates (generative handoff) or a topic redirects explicitly.
- The specialist runs its own tools, knowledge, and (for connected agents) orchestration.
- Results return so the parent can continue—ideally as the only speaker to the user for that turn.
| Pattern | What it means | Exam cue |
|---|---|---|
| Orchestrator / specialist | Parent routes; specialists own domains | “IT front door routes HR policy vs payroll vs facilities” |
| Generative handoff | Parent chooses agent from description match | “When intent matches the specialist’s description…” |
| Explicit redirect | Topic node redirects to a child or connected agent | “After collect ticket ID, always call Billing Agent” |
| Instruction reference | Parent instructions use / to reference agents | Autonomous agents that must call named specialists |
| Enable / disable | Toggle keeps an agent installed but inactive | Temporarily stop a specialist without disconnecting |
Exam trap: Multi-agent is not “always better architecture.” Microsoft explicitly says multi-agent orchestration is powerful but not always necessary. Start with one agent; split when modularity or boundaries are clear.
Child agents vs connected agents
Microsoft documents two composition styles you must distinguish on AB-620:
| Dimension | Child (inline) agents | Connected agents |
|---|---|---|
| Where they live | Lightweight agents inside the existing agent | Separate agents (or external platforms) linked to the main agent |
| Orchestration | Share context; often act like focused subroutines | Have their own orchestration, tools, and knowledge |
| Auth / settings | No separate config, auth, or deployment surface for the subagent | Can keep dedicated settings (including model choices where applicable) |
| Publish | Not intended as independently published channel experiences | Can be published, maintained, and often used directly as well as by other agents |
| Reuse | Not the reuse pattern across many parents | Designed for reuse by more than one main agent (when they are not themselves multi-connected hubs—see limits) |
| ALM | Moves with the parent solution boundary | Supports independent ALM per agent |
| Teams | Single developer or small cohesive team | Multiple teams own different agents |
When Microsoft says to use child agents
Create child agents when:
- You are building a single use case for a single intent or task (create a ticket, check status, book a flight).
- A single developer or small team owns the whole solution.
- You want to logically group tools, instructions, and knowledge into clear subagents.
- You do not need separate configuration, authentication, or deployment for subagents.
- You do not intend to publish subagents separately or make them independently available.
- You do not need reuse across multiple parent agents.
When to break into multiple connected agents
Consider connected agents when tool differentiation degrades: the main agent struggles to choose among tools/topics/agents based on name and description. Microsoft’s rule of thumb: review around more than 30–40 choices of action (tools, topics, and other agents)—and also when a smaller set has similar descriptions. Always validate with your own evaluations; first improve descriptions before splitting blindly.
Other strong reasons to connect separate agents:
- Multiple teams manage agents independently.
- Agents must be published and maintained separately, available on independent channels and callable by others.
- Agents need dedicated settings (for example model configuration).
- You need independent application lifecycle management (ALM) per agent.
- You want the agent reusable across more than one parent.
You can mix child and connected agents: expose some specialists as connected agents users can open directly, while those specialists keep their own child agents for internal tasks.
Multi-agent vs single “fat” agent
| Stay with one agent when… | Move to multi-agent when… |
|---|---|
| Domains fit one coherent instruction set and tool catalog | Domains have different tools, knowledge, and risk profiles |
| Descriptions remain distinct and routing quality is high | Routing quality drops despite description cleanup |
| One team, one release train, one channel story | Independent release, ownership, or channel requirements |
| Extra orchestration hops would hurt UX without benefit | Latency cost is acceptable for modularity and governance |
| Knowledge sources would overlap if split | Each specialist can own non-overlapping knowledge |
Potential impacts Microsoft calls out: multi-agent can increase latency (extra orchestration hops: parent selects agent, child orchestrates again) and increase testing, management, and governance surface area. Design for those costs deliberately.
Description quality (the silent exam skill)
From the parent’s point of view, a connected or child agent is an agentic tool. Write descriptions that answer: When should the parent invoke this specialist, and for what?
| Weak description | Strong description |
|---|---|
| “Helps with employee questions” | “Answers HR policy questions from the employee handbook and leave policy knowledge sources only” |
| “IT agent” | “Handles VPN, laptop, and Microsoft 365 access troubleshooting using the IT knowledge base and ServiceNow tools” |
| “General assistant for everything” | Never—this competes with the parent and every sibling |
Best practices (Microsoft multi-agent guidance):
- Single response principle — Parent is the only agent that talks to the user per turn; subagents are researchers, not responders.
- Subagent role declaration — Tell subagents they must not reply to the user directly; return findings to the parent.
- Directive language — Prefer MUST / NEVER / ONLY over soft “please try to.”
- One knowledge source per subagent, no overlap — Overlapping knowledge causes races, duplicates, or skipped work.
- Accurate, distinct descriptions — Parent routes on them.
- Parent defines the orchestration pattern — Invoke → wait → combine → one response.
- Reinforce “no direct reply” in delegated tasks.
- Test domain-mismatch queries — Ensure graceful “nothing found,” not inventiveness.
- Prefer ask over inform when a follow-up is expected so conversation continuity stays correct.
Handoff mechanics you should design for
- Agents page — Add, enable/disable, delete child agents, or Disconnect connected agents.
- Topic redirect — Explicitly redirect to a child or connected agent; when done, the originating topic can resume and may map inputs/outputs when supported. (Fabric Data agent redirect limitations belong to the Fabric chapter; know redirects are a first-class design tool for Copilot Studio specialists.)
- Instructions with
/— Reference agents inside parent instructions for autonomous or structured plans. - Conversation history — Default pass-through helps context; some designs clear history pass-through so only the explicit task is shared (covered deeply in connected-agent integration).
- Security — Connected agents may hold higher privileges than the parent. Treat a specialist call like a powerful action: do not let the parent bypass approval simply because “another agent can delete.”
- Audit — Expect separate transcripts/telemetry; correlate parent and specialist sessions when debugging.
Realistic design scenarios
Scenario A — Split after tool sprawl. Contoso’s employee assistant grew to 45 tools and 12 topics with overlapping names (“Update request,” “Change request,” “Service request”). Routing quality falls. The team first rewrites descriptions, then extracts HR policy Q&A and IT break/fix into connected agents with independent knowledge and ALM, leaving the parent as a thin orchestrator plus shared identity topics.
Scenario B — Child agents are enough. A single travel team owns a booking agent. Subtasks—validate traveler profile, price itinerary, create expense draft—are child agents inside one solution. No separate channels, no multi-team ALM. Multi-connected architecture would only add hops.
Scenario C — Wrong split. Two child agents both search the same SharePoint HR site. Users get duplicate partial answers. Correct design: one specialist for that knowledge, or one agent with knowledge—not multi-agent theater.
Design decision checklist (exam + project)
- Is the subtask a different domain with its own tools/knowledge?
- Do governance or privileges differ from the parent?
- Is the specialist reusable or independently published?
- Does the team need independent ALM?
- Can you write a non-overlapping description the parent can trust?
- Have you accepted extra latency and wider test surface?
- Will the parent enforce single response and subagent silence?
- Did evaluations still fail after description cleanup alone?
Success checklist
- Explain orchestrator/specialist and handoff modes (generative, redirect, instruction reference).
- Contrast child vs connected with ALM, reuse, auth, and team ownership.
- Defend when not to multi-agent.
- Treat description quality as a routing control plane.
- Name latency, governance, security, and single-response best practices.
Master design judgment here and the next two sections—Foundry integration and existing Copilot Studio agent connection—become configuration of a pattern you already know how to justify.
According to Microsoft’s multi-agent design guidance, when should you primarily consider splitting a Copilot Studio solution into multiple connected agents?
Which situation best matches Microsoft’s guidance for using child (inline) agents instead of separate connected agents?
In multi-agent instruction best practices, what is the preferred communication pattern for parent and subagents?