Multi-Agent Output
Control how a team of agents displays its work — silent, minimal, or verbose
Multi-agent output controls how an AgentTeam displays its progress and results. Streaming is on by default for responsive output — disable it explicitly if you need compatibility with sync-only providers.
from praisonaiagents import Agent, AgentTeam
researcher = Agent(name="Researcher", instructions="Research topics")
writer = Agent(name="Writer", instructions="Write content")
team = AgentTeam(agents=[researcher, writer])
team.start("Research and write about AI")The user runs a team; output mode controls whether progress stays silent, minimal, or verbose.
Quick Start
- Default Silent Mode
python from praisonaiagents import Agent, AgentTeam researcher = Agent(name="Researcher", instructions="Research topics") writer = Agent(name="Writer", instructions="Write content") team = AgentTeam(agents=[researcher, writer]) result = team.start("Research and write about AI") # Silent by default - Verbose Output
python team = AgentTeam( agents=[researcher, writer], output="verbose" ) team.start("Research and write about AI") # Rich display - Streaming Output
python from praisonaiagents import AgentTeam, MultiAgentOutputConfig team = AgentTeam( agents=[researcher, writer], output=MultiAgentOutputConfig(verbose=2, stream=True) ) team.start("Research and write about AI") # Verbose + streaming
—Multi-agent output controls how an AgentTeam displays its progress and results.
from praisonaiagents import Agent, AgentTeam
researcher = Agent(name="Researcher", instructions="Research topics")
writer = Agent(name="Writer", instructions="Write content")
team = AgentTeam(agents=[researcher, writer], output="verbose")
team.start("Research and write about AI")The user picks silent, minimal, or verbose output; the team streams progress accordingly.
Presets
| Preset | verbose | stream | Use case |
|---|---|---|---|
"silent" | 0 | False | Programmatic / API / batch |
"minimal" | 1 | True | Short status lines |
"verbose" | 2 | True | Rich panels, full trace (default) |
Configuration Options
MultiAgentOutputConfig API ReferenceFull API reference
| Option | Type | Default | Description |
|---|---|---|---|
verbose | int | 0 | Verbosity level (0=silent, 1=minimal, 2+=verbose) |
stream | bool | True | Stream tokens as the team’s agents respond |
Disabling streaming for a multi-agent team
from praisonaiagents import Agent, AgentTeam, MultiAgentOutputConfig
team = AgentTeam(
agents=[researcher, writer],
output=MultiAgentOutputConfig(verbose=2, stream=False),
)
team.start("Research and write about quantum computing")Or via the array form (preset + override):
team = AgentTeam(
agents=[researcher, writer],
output=["verbose", {"stream": False}],
)Choosing the right preset
Common Patterns
Pattern 1: Programmatic team (default)
from praisonaiagents import Agent, AgentTeam
team = AgentTeam(agents=[researcher, writer])
result = team.start("Topic") # Returns result, no displayPattern 2: Verbose terminal demo
team = AgentTeam(agents=[researcher, writer], output="verbose")
team.start("Topic")Pattern 3: Verbose + streaming (provider must support sync stream)
team = AgentTeam(
agents=[researcher, writer],
output=["verbose", {"stream": True}],
)
team.start("Topic")Best Practices
Use 'silent' for production APIs
output="silent" (the default) has zero display overhead and works on every provider.
Test streaming with single agent first
Sync streaming is not supported by every provider. Verify with a single agent before enabling for teams.
Choose 'verbose' for demos, 'minimal' for logs
verbose is great for live terminal walkthroughs; minimal keeps log files readable.
Use async for broader streaming support
If you use astart() (async), streaming is more widely supported because async adapters handle sync-only providers via background threads.