Agno

Framework · Last verified 2026-09-30

TL;DR

Agno is an Apache-2.0 Python SDK and runtime from the company of the same name (GitHub: agno-agi) for agents, teams and workflows. Its AgentOS runtime serves them as an API with storage, approvals and chat or protocol interfaces, and a web control plane manages them. It suits Python teams that want to self-host their own agent platform.

Key facts

Agno key facts. Data as of 2026-09-30.
Type Framework
Languages / SDKs Python
License Apache-2.0
Pricing model Open core
Orchestration pattern Supervisor
GitHub stars 42,391 (as of 2026-09-30)
GitHub forks 6,043
Last push 2026-09-30
Latest release v3.0.11
Repository agno-agi/agno
Website www.agno.com
Documentation docs.agno.com
Last verified 2026-09-30

Key features

  • Agents that combine a model with tools, memory, knowledge, storage, guardrails and human-in-the-loop hooks. (source)
  • Teams with a leader and members (agents or nested teams) in coordinate, route, broadcast or tasks mode. (source)
  • Workflows whose steps run agents, teams or functions sequentially, in parallel, in loops or conditionally. (source)
  • AgentOS storage: one db interface for sessions, memory, knowledge metadata, traces, schedules and approvals in your own database. (source)
  • Human-in-the-loop options: tool confirmation, user input, external tool execution and persisted admin approvals. (source)
  • MCP both ways: MCPTools connects agents to MCP servers, and AgentOS can expose agents, teams and workflows as an MCP server. (source)
  • AgentOS interfaces for Slack, Telegram, WhatsApp, Discord, A2A and AG-UI. (source)
  • AgentOS can also serve agents built with the Claude Agent SDK, LangGraph, DSPy and Antigravity through adapters. (source)

Architecture and orchestration pattern

Pattern: Supervisor

Agno has three building blocks. An Agent builds context for a model, runs the tools it requests and returns a run output; memory, knowledge and storage are optional add-ons. A Team has a leader model and members (agents or nested teams); its mode decides whether the leader decomposes and delegates tasks (coordinate, the default), hands the request to one member (route), sends it to all members (broadcast) or works through a shared task list (tasks). A Workflow runs agents, teams and plain functions as steps with sequential, parallel, loop, condition and router control flow.

AgentOS is the runtime. It serves agents, teams and workflows as a FastAPI application with streaming endpoints, and persists sessions, runs, memory, traces, schedules and approvals through a shared db interface (Postgres, SQLite and other backends). Interfaces attach the same components to chat apps and to A2A, AG-UI and MCP clients, and remote-execution helpers call agents on other AgentOS instances.

A browser-based control plane connects to local or deployed AgentOS runtimes to inspect traces and sessions, edit memory and knowledge, resolve approvals and manage schedules; the data stays in the runtime's database.

Human in the loop

Marking a tool with @tool(requires_confirmation=True) pauses the run before the call: the run output has is_paused set, the application approves or rejects the pending tool call, and continue_run() resumes. Other documented modes collect specific user input, let the agent ask for input when it needs it, hand a tool call to external code for execution, or persist an approval for admin review. With a database configured, a paused run can be continued later by run_id and session_id, even from a new process. Workflows can pause before or after a step or at a tool call inside a step; pause state is saved to the workflow database and workflow.continue_run() picks up from there. Approvals can also be resolved in the AgentOS control plane.

Harnesses it can drive

Protocols

MCP, A2A and AG-UI support for Agno. See the full matrix.
ProtocolSupportNote
MCP Yes evidence
checked 2026-09-30
Client and server: MCPTools gives agents MCP server tools, and AgentOS(mcp=...) exposes agents, teams and workflows to MCP clients such as Claude Code, Codex and Cursor.
A2A Yes evidence
checked 2026-09-30
Server and client: the AgentOS A2A interface serves agents, teams and workflows over A2A (since v2.1.2), and agno.client.a2a.A2AClient calls A2A servers.
AG-UI Yes evidence
checked 2026-09-30
Server side: the AgentOS AGUI interface (agno[os,agui]) exposes an agent at /agui for AG-UI clients; the AG-UI README lists Agno as 1st party.

Best for

  • Self-hosting an agent platform with your own database, auth and approval queue
  • Support desks that route questions to specialist agents and serve them in Slack, WhatsApp or Telegram
  • Deployments that need JWT-based RBAC, audit trails and persisted approvals
  • Serving Claude Code (through the Claude Agent SDK) next to Agno agents behind one API

Not for

  • Non-Python codebases
  • Teams that need the control plane for deployed runtimes at no cost; live connections require a paid plan
  • Simple single-call tasks, where a team's separate leader and member model calls add latency and tokens

Quickstart

pip install -U agno openai

Install not yet verified by this site. What this means

from agno.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.team import Team
from agno.team.mode import TeamMode

model = OpenAIResponses(id="gpt-5.4-mini")  # reads OPENAI_API_KEY
billing = Agent(name="Billing Agent", role="Answer billing and refund questions", model=model)
tech = Agent(name="Tech Agent", role="Answer setup and troubleshooting questions", model=model)

helpdesk = Team(
    name="Helpdesk",
    model=model,
    members=[billing, tech],
    mode=TeamMode.route,  # the leader picks one member, who answers directly
)
helpdesk.print_response("My invoice shows two charges for March.")

Common pitfalls

  • Package metadata requires Python >=3.9; the setup guide creates a Python 3.12 environment.
  • Model providers are separate installs (openai here) and need their API key, such as OPENAI_API_KEY.
  • Features live behind extras: agno[os] for AgentOS, agno[mcp], agno[os,a2a], agno[os,agui].
  • Agno sends a telemetry event per agent run; set AGNO_TELEMETRY=false to disable it.
  • Upgrading from v2 to v3 requires a database migration (runs move to their own table) and removing the retired Culture feature.
  • To resume a paused HITL run in another process, keep both run_id and session_id and use the same database.

Official quickstart

Pros

  • Sessions, memory, traces and approvals are stored in a database you control. (source)
  • Team orchestration modes can be swapped without changing member logic. (source)
  • A2A and AG-UI endpoints are built into AgentOS, next to chat interfaces. (source)
  • Paused human-in-the-loop runs are persisted and can be resumed from another process. (source)
  • AgentOS can host Claude Code via the Claude Agent SDK alongside native agents. (source)

Cons

  • Sends a telemetry event per agent run unless AGNO_TELEMETRY=false is set. (source)
  • v3 needs a database migration and removed the Culture feature, whose v2 imports now fail. (source)
  • The control plane is free only for local runtimes; connecting a live AgentOS starts with the $150/month Pro plan. (source)
  • Teams add latency and token usage because the leader and each member make separate model calls. (source)
  • Storage backends differ in capability; session support does not guarantee every AgentOS feature works on that backend. (source)

Alternatives

FAQ

Does Agno support MCP?

Yes, in both directions. MCPTools connects agents to MCP servers, and AgentOS can publish agents, teams and workflows as an MCP server for clients such as Claude Code, Codex and Cursor.

Does Agno support A2A and AG-UI?

Yes. AgentOS ships A2A and AGUI interfaces, and A2AClient calls other A2A servers. Both interfaces need their install extras.

Is Agno free?

The SDK is Apache-2.0 and the runtime is free to self-host. The pricing page lists a free control plane for local runtimes, a $150/month Pro plan for live runtimes, and custom Enterprise pricing.

Can Agno run Claude Code?

Yes. ClaudeAgent wraps the Claude Agent SDK so Claude Code can be served through AgentOS with tool permission rules.

What does a Team's mode do?

It sets the orchestration: coordinate (leader delegates and synthesizes), route (one member answers), broadcast (all members get the task) or tasks (a shared task list).

Sources