> ## Documentation Index
> Fetch the complete documentation index at: https://docs.agno.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> A reference AgentOS with 14 agents, 3 teams, and 5 workflows in one FastAPI service.

The [Demo OS](https://github.com/agno-agi/demo-os) is a single AgentOS application that exercises every feature in the [Runtime](/runtime/overview) section. Use it as a working reference when building your own.

```bash theme={null}
git clone https://github.com/agno-agi/demo-os && cd demo-os
cp example.env .env  # set OPENAI_API_KEY
docker compose up -d --build
```

Open [os.agno.com](https://os.agno.com) → **Add OS** → **Local** → `http://localhost:8000`.

## What's inside

| Type      | Count | Examples                                                                                                                      |
| --------- | ----- | ----------------------------------------------------------------------------------------------------------------------------- |
| Agents    | 14    | Helpdesk (HITL + guardrails), Approvals (compliance), Contacts (memory), Studio (multimodal), Reasoner (reasoning + fallback) |
| Teams     | 3     | Dash (text-to-SQL), Research (4 team modes), Investment (7-agent committee)                                                   |
| Workflows | 5     | Morning Brief, AI Research, Content Pipeline, Repo Walkthrough, Support Triage                                                |

All running inside one FastAPI service, sharing one Postgres for sessions, memory, knowledge, traces, and schedules.

## Map: capability → demo

Each row points at the demo agent that exercises that capability.

| Capability                                        | Demo agent                    | Page                                                  |
| ------------------------------------------------- | ----------------------------- | ----------------------------------------------------- |
| Hybrid search RAG                                 | Dash                          | [RAG](/demo-os/rag)                                   |
| MCP tool / context provider                       | MCP agent                     | [MCP](/demo-os/mcp)                                   |
| Dependency injection                              | Injector                      | [Context Providers](/demo-os/context-providers)       |
| Persistent learning across sessions               | Dash, Contacts, Investment    | [Learning](/demo-os/learning)                         |
| Knowledge base with chunking & reranking          | Dash                          | [Knowledge](/demo-os/knowledge)                       |
| Entity memory + user profile + session context    | Contacts                      | [Memory](/demo-os/memory)                             |
| Session state with agentic updates                | Taskboard                     | [Session State](/demo-os/session-state)               |
| HITL confirmation, user input, external execution | Helpdesk, Approvals, Feedback | [Human-in-the-Loop](/demo-os/human-in-the-loop)       |
| Multi-agent text-to-SQL with dual schema          | Dash team                     | [Text-to-SQL](/demo-os/multi-agent-teams/text-to-sql) |
| Multi-agent investment committee with Gemini      | Investment team               | [Investment](/demo-os/multi-agent-teams/investment)   |

## Why a reference implementation matters

The docs explain what's possible; Demo OS shows it running. When the docs say "you can wire pre-hooks for PII detection," the [Helpdesk agent](https://github.com/agno-agi/demo-os/blob/main/agents/helpdesk/agent.py) shows the four-line config that does it. When the docs say "agents can update their own session state," the [Taskboard agent](https://github.com/agno-agi/demo-os/blob/main/agents/taskboard/agent.py) is a 30-line working example. Every page in this section links straight to the source.

## Run it locally

```bash theme={null}
git clone https://github.com/agno-agi/demo-os && cd demo-os
cp example.env .env  # OPENAI_API_KEY required, others optional
docker compose up -d --build

# Load Dash's SaaS dataset and knowledge
docker exec -it demo-os-api python -m agents.dash.scripts.load_data
docker exec -it demo-os-api python -m agents.dash.scripts.load_knowledge
```

Confirm at `http://localhost:8000/health`. Then open [os.agno.com](https://os.agno.com) → **Add OS** → **Local** → `http://localhost:8000`.

## Deploy it to Railway

```bash theme={null}
railway login
./scripts/railway_up.sh
```

The script provisions Postgres, configures env vars, and ships the app. Same pattern as the [Scout](/tutorials/scout/deploy-to-railway), [Dash](/tutorials/dash/deploy-to-railway), and [Coda](/tutorials/coda/deploy-to-railway) deploys.

<Note>
  📷 **Add screenshot:** Demo OS connected to AgentOS UI showing the agent picker with all 14 agents listed.
</Note>

## Next

[RAG →](/demo-os/rag)
