Catalog PyPI
Back to packageRELEASE DETAILS

1.3.2

PyPI

agent-framework-orchestrations

Orchestration patterns for Microsoft Agent Framework. Includes SequentialBuilder, ConcurrentBuilder, HandoffBuilder, GroupChatBuilder, and MagenticBuilder.

Published15 Oct 2026
Direct dependencies1
Transitive dependenciesNot calculated

README

Version 1.3.2 documentation

Agent Framework Orchestrations

Orchestration patterns for Microsoft Agent Framework. This package provides high-level builders for common multi-agent workflow patterns.

Installation

pip install agent-framework-orchestrations

Orchestration Patterns

SequentialBuilder

Chain agents/executors in sequence, passing conversation context along:

from agent_framework.orchestrations import SequentialBuilder

workflow = SequentialBuilder(participants=[agent1, agent2, agent3]).build()

# Preserve agent1 and agent2 as visible progress, while the default builder output remains Workflow Output.
workflow = SequentialBuilder(
    participants=[agent1, agent2, agent3],
    intermediate_output_from=[agent1, agent2],
).build()

ConcurrentBuilder

Fan-out to multiple agents in parallel, then aggregate results:

from agent_framework.orchestrations import ConcurrentBuilder

workflow = ConcurrentBuilder(participants=[agent1, agent2, agent3]).build()

HandoffBuilder

Decentralized agent routing where agents decide handoff targets:

from agent_framework.orchestrations import HandoffBuilder

workflow = (
    HandoffBuilder()
    .participants([triage, billing, support])
    .with_start_agent(triage)
    .build()
)

By default, each user response returns to the agent that requested it. To have the start agent re-evaluate every user turn, disable return-to-previous routing:

workflow = (
    HandoffBuilder()
    .participants([triage, billing, support])
    .with_start_agent(triage)
    .enable_return_to_previous(False)
    .build()
)

GroupChatBuilder

Orchestrator-directed multi-agent conversations:

from agent_framework.orchestrations import GroupChatBuilder

workflow = GroupChatBuilder(
    participants=[agent1, agent2],
    selection_func=my_selector,
    intermediate_output_from=[agent1, agent2],
).build()

MagenticBuilder

Sophisticated multi-agent orchestration using the Magentic One pattern:

from agent_framework.orchestrations import MagenticBuilder

workflow = MagenticBuilder(
    participants=[researcher, writer, reviewer],
    manager_agent=manager_agent,
    intermediate_output_from=[researcher, writer, reviewer],
).build()

Output Selection

Orchestration builders expose Workflow Output selection using participant names. The core rule is that output_from is an allow-list for Workflow Output, not a routing rule for every other participant output. Unselected participant payloads are hidden unless intermediate_output_from explicitly selects them as Intermediate Output.

  • output_from designates participant emissions as Workflow Output (type='output' events).
  • intermediate_output_from designates participant emissions as Intermediate Output (type='intermediate' events).

If neither list is provided, each builder uses its documented default Workflow Output contract. Sequential emits the last participant; Concurrent, GroupChat, and Magentic emit their aggregator/orchestrator/manager output; Handoff emits participants.

SelectionWorkflow OutputIntermediate OutputHidden payloads
Omit both selectionsBuilder default Workflow Output contractNoneBuilder-specific non-output participant payloads
output_from="all"Every output-capable participantNoneNone
output_from=[writer]Only writerNoneAll other participant payloads
output_from=[writer], intermediate_output_from="all_other"Only writerEvery output-capable participant not selected by output_fromNone
intermediate_output_from="all_other"None, except builder-internal default output executors where applicableEvery output-capable participantBuilder-internal plumbing payloads
output_from=[], intermediate_output_from="all_other"None, except builder-internal default output executors where applicableEvery output-capable participantBuilder-internal plumbing payloads
output_from=[writer], intermediate_output_from=[researcher, reviewer]Only writerresearcher and reviewerAny other participant payloads

Invalid selections fail at construction or build time:

Invalid selectionWhy it fails
output_from="all_other""all_other" is only valid for intermediate_output_from
intermediate_output_from="all""all" is only valid for output_from
The same participant in both selectionsOne payload cannot be both Workflow Output and Intermediate Output
Duplicate participant selectionsDuplicates are treated as configuration errors
Unknown participant selectionsTypos and missing participants are rejected
output_from=[], intermediate_output_from=[]Both explicit selections are empty

When an orchestration is wrapped with workflow.as_agent(), Workflow Output becomes normal response text. Intermediate Output becomes text_reasoning content so callers can inspect progress without changing .text behavior.

Documentation

For more information, see the Agent Framework documentation.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 1

Native requirements
1 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
agent-framework-core
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
agent-framework-core<2,>=1.19.0runtime

Distribution files

2 collected
agent_framework_orchestrations-1.3.2-py3-none-any.whl

bdist_wheel · 71.79 KB · Python py3

Source file
agent_framework_orchestrations-1.3.2.tar.gz

sdist · 65.02 KB · Python source

Source file

Repository

PENDING
microsoft/agent-framework

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 22:00 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:6944d34cf9e920bddf3afc84857df78e64b1fbc77dc838f5b3d51479bdc14448

Other collected versions

View all collected versions →