framework: agno connects PraisonAI’s YAML and CLI to the Agno multi-agent framework, routing tasks through Agno’s Team(mode=route) with a single install.
Quick Start
framework: agno YAML runs through Agno’s Team(mode=route) router — keep reading for YAML.
Requires
praisonai-frameworks 0.1.8+. Install with pip install "praisonai[agno]" or pip install "praisonai-frameworks[agno]".How Agno Works
Agno wraps each role into anagno.Agent, then assembles a Team(mode=route) that routes tasks to the appropriate specialist. For handoff topologies, the router agent delegates to sub-agents at runtime.
Capabilities
| Capability | Supported |
|---|---|
agent_creation | ✅ |
tool_execution | ✅ |
sequential_execution | ✅ |
handoff | ✅ |
tool_loop | ✅ |
Sequential Context (Task Chaining)
Tasks reference outputs of earlier tasks withcontext: [task_name]:
handoff.to run sequentially; context wires task outputs as inputs to subsequent tasks.
Handoffs
Usehandoff.to with a single router task; specialists are routed via Agno Team(mode=route):
handoff.to fall back to sequential execution.
Direct Adapter Use (Advanced)
Call the adapter without the CLI or YAML loader:Most users should use the CLI / YAML flow instead. Direct adapter calls are for advanced integration scenarios.
Verify Installation
Check availability viapraisonai doctor:
_agno_probe() checks three things in order:
importlib.metadata.distribution("agno")— the PyPI dist must be installed.importlib.util.find_spec("agno")— theagnoimport namespace must be discoverable.from agno.agent import Agent— the AgnoAgentsymbol must import without error.
True from is_available("agno") guarantees the adapter can run, not just that the package is on disk.
Pip Extras Reference
| Extra | Installs | Required for |
|---|---|---|
praisonai[agno] | praisonai-frameworks[agno]>=0.1.8, praisonai-tools>=0.1.0 | Probe + doctor recognition + adapter dispatch for Agno |
praisonai-frameworks[agno] (transitive) | Agno adapter implementation registered via entry-point group, plus the agno PyPI dist | Actually executing framework: agno |
The install-hint key maps
agno → agno (same name for both the YAML key and PyPI dist). The YAML key, CLI flag value, and probe name are all agno.Troubleshooting
framework='agno' is not a valid choice — you are running a pre-PR-#2501 PraisonAI version. Upgrade: pip install -U praisonai.
Framework 'agno' was requested but is not installed — run pip install 'praisonai[agno]' (from your project rather than praisonai-frameworks[agno] alone, so praisonai-tools is also pulled in).
ValueError: framework='agno' in workflow YAML is not supported for workflow execution — switch the file to the roles: agents.yaml shape used in the Quick Start above.
agno imports successfully but is_available("agno") returns False — the probe also requires agno to be visible to importlib.metadata.distribution(...). If the package was installed in editable or namespace-only mode without a real dist-info, the probe refuses. Install the published agno PyPI package.
Best Practices
When to pick agno over other frameworks
When to pick agno over other frameworks
Choose
agno when you want Agno’s Team(mode=route) routing semantics with OpenAI-compatible models. Agno supports handoffs, sequential tasks, and tool loops — making it a strong alternative to autogen_v4 or openai_agents for multi-agent routing topologies.When to use handoffs
When to use handoffs
Use
handoff.to in your YAML when you need a router agent to delegate to specialists at runtime. Multi-task configs fall back to sequential execution. See Handoffs for the full conceptual model and which frameworks support it.Use the roles: format
Use the roles: format
Always use the
roles: agents.yaml shape. The workflow steps: format raises a ValueError at validation time and is explicitly not supported for framework: agno.Use context: to express task dependencies
Use context: to express task dependencies
Declare task dependencies with
context: [task_name] in your YAML. This keeps the config declarative and lets the adapter wire task outputs as inputs automatically.Sync execution only
Sync execution only
The Agno adapter runs synchronously (
sync run() only). Async task graphs are not supported in the current adapter version.Related
Google ADK
Google ADK framework integration — another multi-framework wrapper with handoff support
CrewAI
CrewAI framework integration
AutoGen
AutoGen framework integration
Pydantic AI
Pydantic AI framework integration
Framework Availability
Probe API for checking installed frameworks
Framework Adapter Plugins
Register custom adapters via entry points
Handoffs
Handoff conceptual model and which frameworks support it
PraisonAI Agents
PraisonAI native agents framework

