Skip to main content

Agno: a lightweight library for building Multi-Agent Systems

Project description

Documentation   •   Examples   •   Website

What is Agno?

Agno is the multi-agent framework, runtime and UI built for speed.

Use it to build multi-agent systems with memory, knowledge, human in the loop and MCP support. You can orchestrate agents as multi-agent teams (more autonomy) or step-based agentic workflows (more control).

Here’s an example of an Agent that connects to an MCP server, manages conversation state in a database, and is served using a FastAPI application that you can interact with using the AgentOS UI.

from agno.agent import Agent
from agno.db.sqlite import SqliteDb
from agno.models.anthropic import Claude
from agno.os import AgentOS
from agno.tools.mcp import MCPTools

# ************* Create Agent *************
agno_agent = Agent(
    name="Agno Agent",
    model=Claude(id="claude-sonnet-4-5"),
    # Add a database to the Agent
    db=SqliteDb(db_file="agno.db"),
    # Add the Agno MCP server to the Agent
    tools=[MCPTools(transport="streamable-http", url="https://docs.agno.com/mcp")],
    # Add the previous session history to the context
    add_history_to_context=True,
    markdown=True,
)


# ************* Create AgentOS *************
agent_os = AgentOS(agents=[agno_agent])
# Get the FastAPI app for the AgentOS
app = agent_os.get_app()

# ************* Run AgentOS *************
if __name__ == "__main__":
    agent_os.serve(app="agno_agent:app", reload=True)

What is the AgentOS?

AgentOS is a high-performance runtime for multi-agent systems. Key features include:

  1. Pre-built FastAPI runtime: AgentOS ships with a ready-to-use FastAPI app for running your agents, teams, and workflows. This gives you a major head start in building your AI product.

  2. Integrated UI: The AgentOS UI connects directly to your runtime, letting you test, monitor, and manage your system in real time. This gives you unmatched visibility and control over your system.

  3. Private by design: AgentOS runs entirely in your cloud, ensuring complete data privacy. No data ever leaves your system. This is ideal for security-conscious enterprises.

Here's what the AgentOS UI looks like:

https://github.com/user-attachments/assets/feb23db8-15cc-4e88-be7c-01a21a03ebf6

The Complete Agentic Solution

For companies building agents, Agno provides the complete solution:

  • The fastest framework for building agents, multi-agent teams and agentic workflows.
  • A ready-to-use FastAPI app that gets you building AI products on day one.
  • A control plane for testing, monitoring and managing your system.

Agno brings a novel architecture that no other framework provides, your AgentOS runs securely in your cloud, and the control plane connects directly to it from your browser. You don't need to send data to any external services or pay retention costs, you get complete privacy and control.

Getting started

If you're new to Agno, follow our quickstart to build your first Agent and run it using the AgentOS.

After that, checkout the examples gallery and build real-world applications with Agno.

Documentation, Community & More Examples

Setup Your Coding Agent to Use Agno

For LLMs and AI assistants to understand and navigate Agno's documentation, we provide an llms.txt or llms-full.txt file. This file is built for AI systems to efficiently parse and reference our documentation.

IDE Integration

When building Agno agents, using Agno documentation as a source in your IDE is a great way to speed up your development. Here's how to integrate with Cursor:

  1. In Cursor, go to the "Cursor Settings" menu.
  2. Find the "Indexing & Docs" section.
  3. Add https://docs.agno.com/llms-full.txt to the list of documentation URLs.
  4. Save the changes.

Now, Cursor will have access to the Agno documentation. You can do the same with other IDEs like VSCode, Windsurf etc.

Performance

If you're building with Agno, you're guaranteed best-in-class performance by default. Our obsession with performance is necessary because even simple AI workflows can spawn hundreds of Agents and because many tasks are long-running -- stateless, horizontal scalability is key for success.

At Agno, we optimize performance across 3 dimensions:

  1. Agent performance: We optimize static operations (instantiation, memory footprint) and runtime operations (tool calls, memory updates, history management).
  2. System performance: The AgentOS API is async by default and has a minimal memory footprint. The system is stateless and horizontally scalable, with a focus on preventing memory leaks. It handles parallel and batch embedding generation during knowledge ingestion, metrics collection in background tasks, and other system-level optimizations.
  3. Agent reliability and accuracy: Monitored through evals, which we’ll explore later.

Agent Performance

Let's measure the time it takes to instantiate an Agent and the memory footprint of an Agent. Here are the numbers (last measured in Oct 2025, on an Apple M4 MacBook Pro):

  • Agent instantiation: ~3μs on average
  • Memory footprint: ~6.6Kib on average

We'll show below that Agno Agents instantiate 529× faster than Langgraph, 57× faster than PydanticAI, and 70× faster than CrewAI. Agno Agents also use 24× lower memory than Langgraph, 4× lower than PydanticAI, and 10× lower than CrewAI.

[!NOTE] Run time performance is bottlenecked by inference and hard to benchmark accurately, so we focus on minimizing overhead, reducing memory usage, and parallelizing tool calls.

Instantiation Time

Let's measure instantiation time for an Agent with 1 tool. We'll run the evaluation 1000 times to get a baseline measurement. We'll compare Agno to LangGraph, CrewAI and Pydantic AI.

[!NOTE] The code for this benchmark is available here. You should run the evaluation yourself on your own machine, please, do not take these results at face value.

# Setup virtual environment
./scripts/perf_setup.sh
source .venvs/perfenv/bin/activate

# Agno
python cookbook/evals/performance/instantiate_agent_with_tool.py

# LangGraph
python cookbook/evals/performance/comparison/langgraph_instantiation.py
# CrewAI
python cookbook/evals/performance/comparison/crewai_instantiation.py
# Pydantic AI
python cookbook/evals/performance/comparison/pydantic_ai_instantiation.py

LangGraph is on the right, let's start it first and give it a head start. Then CrewAI and Pydantic AI follow, and finally Agno. Agno obviously finishes first, but let's see by how much.

https://github.com/user-attachments/assets/54b98576-1859-4880-9f2d-15e1a426719d

Memory Usage

To measure memory usage, we use the tracemalloc library. We first calculate a baseline memory usage by running an empty function, then run the Agent 1000x times and calculate the difference. This gives a (reasonably) isolated measurement of the memory usage of the Agent.

We recommend running the evaluation yourself on your own machine, and digging into the code to see how it works. If we've made a mistake, please let us know.

Results

Taking Agno as the baseline, we can see that:

Metric Agno Langgraph PydanticAI CrewAI
Time (seconds) 529× slower 57× slower 70× slower
Memory (MiB) 24× higher 4× higher 10× higher

Exact numbers from the benchmark:

Metric Agno Langgraph PydanticAI CrewAI
Time (seconds) 0.000003 0.001587 0.000170 0.000210
Memory (MiB) 0.006642 0.161435 0.028712 0.065652

[!NOTE] Agno agents are designed for performance and while we share benchmarks against other frameworks, we should be mindful that accuracy and reliability are more important than speed.

Contributions

We welcome contributions, read our contributing guide to get started.

Telemetry

Agno logs which model an agent used so we can prioritize updates to the most popular providers. You can disable this by setting AGNO_TELEMETRY=false in your environment.

⬆️ Back to Top

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agno-2.1.7.tar.gz (971.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agno-2.1.7-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file agno-2.1.7.tar.gz.

File metadata

  • Download URL: agno-2.1.7.tar.gz
  • Upload date:
  • Size: 971.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for agno-2.1.7.tar.gz
Algorithm Hash digest
SHA256 9705eef10d0c3fc0b212e1c9bbdec33c79618b26c456b2ee7df81edeac3abe97
MD5 f83f1287790cb56ecde391c234dd3aad
BLAKE2b-256 5b35b09fd6bdbb0f629fd539b91117556db8dec90be2a004d4b5c4df6c3bac91

See more details on using hashes here.

File details

Details for the file agno-2.1.7-py3-none-any.whl.

File metadata

  • Download URL: agno-2.1.7-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for agno-2.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 bb42348c8cc4d18d320747c802d05a15197cc64405d51e46b57ac53c23749dec
MD5 035dd0983674c384f2ee92fcd273dbd5
BLAKE2b-256 4f131fef7ceceebeef62a00f85a127d46f11f99cfdc9f1ba7a22149e99a6f067

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page