agno

Full-stack Python framework for building, running, and managing AI agent platforms

Framework
PyPI
v2.9.0
41,771stars
Apache License 2.0

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
93/100Excellent
Development Activity100
Maintenance100
Community76
Maturity56
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
85/100Excellent
Architecture88
Code Quality82
Innovation86
Learning Curve62

Agno is a Python framework and runtime for building agent platforms. You build agents with the Agno SDK, run them as a service with the AgentOS runtime, and manage the whole stack through a web control plane — keeping ownership of your data, memory, and security posture with JWT-based RBAC.

Beyond single agents, Agno provides teams, workflows, reasoning, memory, knowledge/vector-store integrations, tools, guardrails, and tracing, plus a model-agnostic layer that speaks to dozens of LLM providers. The AgentOS runtime serves agents over a REST API backed by Postgres and an MCP server, turning a codebase of agents into a deployable, observable platform.

What You Get

  • An agent SDK for defining agents, teams, and multi-step workflows in plain Python
  • The AgentOS runtime that serves agents over a REST API with a Postgres store and an MCP server
  • A model-agnostic layer with adapters for dozens of LLM providers under agno.models
  • Built-in memory, session management, and knowledge/vector-database integrations
  • Tools, guardrails, reasoning, and OpenTelemetry-style tracing for production agents

Common Use Cases

  • Building and deploying a self-hosted agent platform you fully own
  • Running agents as a REST service with persistent memory and traces
  • Composing multi-agent teams and workflows over shared tools and knowledge
  • Switching or mixing LLM providers behind a single agent abstraction

Under The Hood

Architecture - The codebase is a monorepo under libs/, with the core agno package plus agno_infra and agnoctl. Inside libs/agno/agno, responsibilities are split into cohesive subpackages: agent/team/workflow primitives, a models provider layer, db and session for persistence and memory, knowledge/vectordb for retrieval, tools, reasoning, guardrails, and tracing. The os subpackage is the AgentOS runtime — app.py, auth.py, managers.py, and MCP integration wire agents into a served REST application with JWT-based RBAC.

Tech Stack - Pure Python targeting 3.9–3.13. Runtime dependencies are deliberately lean — Pydantic and pydantic-settings for models/config, httpx[http2] for transport, rich for output, pyyaml, and the agnoctl control CLI — with FastAPI/uvicorn/websockets/PyJWT pulled in for the serving layer. Provider SDKs (openai, etc.) are optional extras so the core stays light.

Code Quality - The project is production-grade: mypy and ruff are pinned in dev extras, a substantial pytest suite (unit plus a tests/system tree) exercises the code, and py.typed ships type information to consumers. Consistent subpackage boundaries and a large contributor base (500+) point to disciplined maintenance.

API Design - Agno emphasizes ergonomics — the docs advertise a first agent in about 20 lines — while exposing deep configurability through agents, teams, and workflows. The model-agnostic layer gives a uniform surface across dozens of providers, and AgentOS turns the same objects into a deployable service, though the breadth of concepts (memory, knowledge, guardrails, RBAC) means a real learning investment for full-platform use.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search