Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,13 @@ linkchecker-out.txt
.DS_Store
.mintlify-last
.cursor
.claude
.agent
.envrc

agno
projects
specs
.claude
.envrc
agno-docs-style/styles/alex
agno-docs-style/styles/write-good
agno-docs-style/styles/Google
Expand Down
156 changes: 102 additions & 54 deletions agent-os/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,15 @@
description: "The runtime and control plane for multi-agent systems."
---

**AgentOS turns your agents into a production API you can deploy anywhere.** It gives you a pre-built backend for your AI product, so all you need to do is add your agent logic, build your frontend and your product is live.
**Turn agents into production APIs.** AgentOS provides a pre-built backend for AI products.
Add agent logic, build the frontend, and ship.

You bring the agents and AgentOS turns it into a product:
- 50+ API endpoints with SSE-compatible streaming. Ready for production on day one.
- Sessions, memory, knowledge stored in your database. Your data stays in your system.
- Request-level isolation. No state bleed between users, agents and sessions.
- JWT-based RBAC with hierarchical scopes. Enterprise-ready from day one.
- Tracing built-in, stored in your database. No third-party egress. No vendor lock-in.
- Guardrails, human in the loop, learning machines. The full Agno framework.
## Create AgentOS

Here's an example of an AgentOS serving an Agent with memory, state, and MCP tools:
<Tabs>
<Tab title="Basic AgentOS">

Serve a single agent with memory and tools. Connect to the UI to monitor and debug.

```python agno_agent.py
from agno.os import AgentOS
Expand All @@ -37,15 +35,83 @@
agent_os.serve(app="agno_agent:app", reload=True)
```

<Check>
</Tab>
<Tab title="AgentOS with Builder Components">
Pre-register components (agents, tools, workflows) to use them in the visual builder.

```python agent_os_registry.py
from agno.agent.agent import Agent

Check warning on line 43 in agent-os/introduction.mdx

View check run for this annotation

Mintlify / Mintlify Validation (agno-v2) - vale-spellcheck

agent-os/introduction.mdx#L43

'agent' is repeated!
from agno.db.postgres import PostgresDb
from agno.models.anthropic import Claude
from agno.models.openai import OpenAIChat
from agno.os import AgentOS
from agno.registry import Registry
from agno.tools.calculator import CalculatorTools
from agno.tools.duckduckgo import DuckDuckGoTools

db = PostgresDb(db_url="postgresql+psycopg://ai:ai@localhost:5532/ai", id="postgres_db")


def sample_tool():
return "Hello, world!"


registry = Registry(
name="Agno Registry",
tools=[DuckDuckGoTools(), sample_tool, CalculatorTools()],
models=[
OpenAIChat(id="gpt-5-mini"),
OpenAIChat(id="gpt-5"),
Claude(id="claude-sonnet-4-5"),
],
dbs=[db],
)

agent = Agent(
id="registry-agent",
model=Claude(id="claude-sonnet-4-5"),
db=db,
)

agent_os = AgentOS(
agents=[agent],
id="registry-agent-os",
registry=registry,
db=db,
)

app = agent_os.get_app()

if __name__ == "__main__":
agent_os.serve(app="agent_os_registry:app", reload=True)
```

</Tab>
</Tabs>

## Architecture

<img
className="block dark:hidden"
src="/images/agent-os/agentos-architecture-light.png"
alt="AgentOS Architecture"
/>

<img
className="hidden dark:block"
src="/images/agent-os/agentos-architecture-dark.png"
alt="AgentOS Architecture"
/>

AgentOS runs on FastAPI. Add middleware, custom routes, background tasks, or any FastAPI feature without extra configuration.
AgentOS consists of two parts:

</Check>
1. **Runtime**: Runs agents built with the Agno SDK.
2. **User Interface**: Manages, monitors, and debugs the system.

## Control Plane
Runs as a container in your cloud. The UI connects directly from the browser.
No proxies. No data relays.

AgentOS comes with a built-in [control plane](https://os.agno.com) that connects directly to your runtime from your browser. Monitor sessions. Debug with full traces. Manage users and permissions.
FastAPI Compatible: Add routes, workers, and middleware without configuration.

<Frame>
<video
Expand All @@ -62,12 +128,13 @@

## Private by Design

Most AI tooling stores your data on their servers. You pay retention costs, deal with egress fees, and depend on their security.
Your data, your infrastructure.

Most tooling stores data centrally. AgentOS keeps it local.

AgentOS runs entirely in your infrastructure:
- **Your database**: Sessions, memory, knowledge, traces. All stored where you control it.
- **Zero transmission**: No conversations, logs, or metrics sent to Agno.
- **Nothing stored on our end**: The control plane reads from your database, displays in your browser, stores nothing. When you close the tab, there's no trace of your data anywhere but your own systems.
- **Database**: Sessions, memory, and traces stay with you.
- **Zero Transmission**: No conversations or logs sent to Agno.
- **Client-Side UI**: The control plane reads directly from your database, displays in your browser, stores nothing.

See [AgentOS Security](/agent-os/security) for more details.

Expand All @@ -79,51 +146,32 @@
/>
</Frame>

## Architecture

Your AgentOS runs as a container in your cloud. The control plane connects directly from your browser. No proxy servers, no data relay.

<img
className="block dark:hidden"
src="/images/agent-os/agentos-architecture-light.png"
alt="AgentOS Architecture"
/>
## Features

<img
className="hidden dark:block"
src="/images/agent-os/agentos-architecture-dark.png"
alt="AgentOS Architecture"
/>
- **Production API**: 50+ endpoints with SSE streaming.
- **Data Sovereignty**: Sessions, memory, and traces stored in your database.
- **Isolation**: Request-level isolation for users and sessions.
- **Security**: JWT-based RBAC with hierarchical scopes.
- **Observability**: Built-in tracing without third-party egress.
- **Full Framework**: Guardrails, human-in-the-loop, and learning machines.

## Get Started
## Next Steps

<CardGroup cols={2}>
<Card
title="Run Your First AgentOS"
icon="plus"
href="/agent-os/run-your-os"
>
Create and run your first AgentOS
<Card title="Run Your First AgentOS" icon="plus" href="/agent-os/run-your-os">
Initialize and serve a basic agent.
</Card>
<Card
title="Connect Your AgentOS"
title="Connect AgentOS to UI"
icon="link"
href="/agent-os/connect-your-os"
>
Connect your AgentOS to the UI
Connect your AgentOS to the Control Plane and Builder UI
</Card>
<Card
title="Control Plane"
icon="desktop"
href="/agent-os/control-plane"
>
Monitor and manage your AgentOS
<Card title="Control Plane" icon="desktop" href="/agent-os/control-plane">
Inspect sessions and debug traces.
</Card>
<Card
title="Overview"
icon="book"
href="/agent-os/overview"
>
<Card title="Learn More" icon="book" href="/agent-os/overview">
Learn more about AgentOS
</Card>
</CardGroup>
</CardGroup>
66 changes: 34 additions & 32 deletions agent-os/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@ title: "Overview"
description: "The production runtime and control plane for your agentic systems."
---

AgentOS turns your agents into a production API. A minimal AgentOS application looks like this:
AgentOS transforms your agents into a production-ready API.

A minimal application looks like this:

```python my_os.py
from agno.os import AgentOS
Expand All @@ -24,27 +26,27 @@ if __name__ == "__main__":

## Parameters

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `name` | `str` | `None` | AgentOS name |
| `agents` | `List[Agent]` | `None` | List of agents |
| `teams` | `List[Team]` | `None` | List of teams |
| `workflows` | `List[Workflow]` | `None` | List of workflows |
| `db` | `BaseDb` | `None` | Database to use for the AgentOS |
| `tracing` | `bool` | `False` | Enable tracing to provided database |
| `knowledge` | `List[Knowledge]` | `None` | List of knowledge instances |
| `interfaces` | `List[BaseInterface]` | `None` | List of interfaces ([docs](/agent-os/interfaces)) |
| `config` | `str` or `AgentOSConfig` | `None` | Configuration file path or config instance ([docs](/agent-os/config)) |
| `base_app` | `FastAPI` | `None` | Custom FastAPI app ([docs](/agent-os/custom-fastapi/overview)) |
| `lifespan` | `Any` | `None` | Lifespan context manager ([docs](/agent-os/lifespan)) |
| `authorization` | `bool` | `False` | Enable RBAC ([docs](/agent-os/security/rbac)) |
| `authorization_config` | `AuthorizationConfig` | `None` | JWT verification config |
| `enable_mcp_server` | `bool` | `False` | Turn AgentOS into an MCP server ([docs](/agent-os/mcp/mcp)) |
| `cors_allowed_origins` | `List[str]` | `None` | Allowed CORS origins |
| `auto_provision_dbs` | `bool` | `True` | Auto-provision databases |
| `run_hooks_in_background` | `bool` | `False` | Run hooks as background tasks |

See the [AgentOS class reference](/reference/agent-os/agent-os) for complete reference.
| Parameter | Type | Default | Description |
| ------------------------- | ------------------------ | ------- | -------------------------------------------------------------- |
| `name` | `str` | `None` | AgentOS name |
| `agents` | `List[Agent]` | `None` | Agents to include |
| `teams` | `List[Team]` | `None` | Teams to include |
| `workflows` | `List[Workflow]` | `None` | Workflows to include |
| `db` | `BaseDb` | `None` | Database used for the AgentOS |
| `tracing` | `bool` | `False` | Enable tracing to AgentOS `db` |
| `knowledge` | `List[Knowledge]` | `None` | Knowledge bases |
| `interfaces` | `List[BaseInterface]` | `None` | Agent interfaces ([docs](/agent-os/interfaces)) |
| `config` | `str` or `AgentOSConfig` | `None` | Configuration path or object ([docs](/agent-os/config)) |
| `base_app` | `FastAPI` | `None` | Custom FastAPI app ([docs](/agent-os/custom-fastapi/overview)) |
| `lifespan` | `Any` | `None` | Lifespan context manager ([docs](/agent-os/lifespan)) |
| `authorization` | `bool` | `False` | Enable RBAC ([docs](/agent-os/security/rbac)) |
| `authorization_config` | `AuthorizationConfig` | `None` | JWT verification config |
| `enable_mcp_server` | `bool` | `False` | Enable MCP server ([docs](/agent-os/mcp/mcp)) |
| `cors_allowed_origins` | `List[str]` | `None` | Allowed CORS origins |
| `auto_provision_dbs` | `bool` | `True` | Auto-provision databases |
| `run_hooks_in_background` | `bool` | `False` | Run hooks in background |

See [AgentOS class reference](/reference/agent-os/agent-os) for details.

## Methods

Expand All @@ -56,21 +58,21 @@ Returns the configured FastAPI application.

Starts the AgentOS server.

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `app` | `str` or `FastAPI` | Required | FastAPI app instance or module path |
| `host` | `str` | `localhost` | Host to bind |
| `port` | `int` | `7777` | Port to bind |
| `workers` | `int` | `None` | Number of workers |
| `reload` | `bool` | `False` | Enable auto-reload |
| Parameter | Type | Default | Description |
| --------- | ------------------ | ----------- | ----------------------------------- |
| `app` | `str` or `FastAPI` | Required | FastAPI app instance or module path |
| `host` | `str` | `localhost` | Host to bind |
| `port` | `int` | `7777` | Port to bind |
| `workers` | `int` | `None` | Number of workers |
| `reload` | `bool` | `False` | Enable auto-reload |

### `resync()`

Rediscover and reinitialize agents, teams, workflows, databases, and knowledge bases.
Reloads agents, teams, workflows, and resources.

## Configuration

The `config` parameter accepts a YAML file path or `AgentOSConfig` instance. Use it to set quick prompts, display names, and per-database settings.
The `config` parameter accepts a YAML path or `AgentOSConfig` object. Use it to configure prompts, display names, and database settings.

```python
agent_os = AgentOS(
Expand All @@ -80,4 +82,4 @@ agent_os = AgentOS(
)
```

See [Configuration](/agent-os/config) for full details.
See [Configuration](/agent-os/config) for details.