Skip to main content

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.

You have a deployed agent platform with two reference agents, evals, and JWT auth. The sections below cover the moves that turn it into a real product: teams and workflows, scheduled tasks, and connecting to Slack.

Going beyond agents

Rule of thumb: agents for open questions, teams for routing, workflows for processes. Most of your platform will be agents. A few will be teams or workflows.
PatternUse it whenReference
AgentA single LLM with tools and instructions can handle the request.Agents overview
TeamThe right specialist isn’t known up front. A leader routes or coordinates.Teams overview
WorkflowThe process needs to run the same way every time. Determinism matters.Workflows overview
Teams come in three modes:
ModeBehavior
CoordinateA leader plans the work, calls the right specialists, synthesizes.
RouteA router picks one specialist to handle the request.
BroadcastEvery specialist runs in parallel; you aggregate.

Scheduled tasks

The scheduler is on by default in app/main.py:
agent_os = AgentOS(
    name="AgentOS",
    scheduler=True,
    ...
)
Schedule any agent or workflow on a cron. Common patterns:
Use caseExample
MaintenancePurge sessions older than 90 days. Vacuum Postgres tables.
Proactive runsEvery weekday morning, summarize overnight news and post to Slack.
Catch regressionsRun python -m evals weekly against production agents.
See scheduling for the cron API.

Connect to interfaces

Your agents should be available where your users are. Slack threads. Discord channels. Telegram for the field team. Or a custom UI inside your product. The pattern is the same for each. Expose the agent via an interface in app/main.py:
from agno.os.interfaces.slack import Slack

interfaces: list = []
if SLACK_BOT_TOKEN and SLACK_SIGNING_SECRET:
    interfaces.append(
        Slack(
            agent=code_search,
            streaming=True,
            token=SLACK_BOT_TOKEN,
            signing_secret=SLACK_SIGNING_SECRET,
            resolve_user_identity=True,
        )
    )

agent_os = AgentOS(
    ...
    interfaces=interfaces,
)
resolve_user_identity=True ties the Slack user to the same user_id they have in the AgentOS UI, so sessions follow the person across surfaces.
InterfaceReference
SlackSlack interface
TelegramTelegram interface
WhatsAppWhatsApp interface
Custom UI / AG-UIAG-UI interface
Agent-to-agentA2A interface
All interfacesInterfaces overview

Add tools to an agent

Agno ships 100+ toolkit integrations. See the full toolkit reference.
from agno.tools.slack import SlackTools
from agno.tools.googlesheets import GoogleSheetsTools

my_agent = Agent(
    ...
    tools=[
        SlackTools(),
        GoogleSheetsTools(),
    ],
)
Each toolkit reads its credentials from environment variables. Add them to .env for local and to .env.production for Railway, then ./scripts/railway/env-sync.sh.

Swap model providers

Switch from OpenAI to Anthropic:
  1. Set ANTHROPIC_API_KEY in .env and .env.production.
  2. Add anthropic to pyproject.toml.
  3. Update the agent’s model=.
  4. Run ./scripts/generate_requirements.sh && docker compose up -d --build.
from agno.models.anthropic import Claude

my_agent = Agent(
    ...
    model=Claude(id="claude-sonnet-4-5"),
)
The same pattern works for Google (google-genai), Mistral (mistralai), and the other supported providers.

Keep the repo coherent

As you ship more agents, docs drift, env vars rot, and new agents miss imports. The template ships a fourth Claude Code prompt for the recurring sweep:
Run docs/review-and-improve.md
It auto-fixes mechanical drift (stale paths, missing example.env entries, agents on disk not registered in app/main.py) and surfaces the rest as a punch list. Run it before public releases and periodically during active development.

Going deeper

To learnSee
The full AgentOS feature setDemo OS
How knowledge and Agentic RAG workKnowledge
How MCP integrates with AgnoMCP
Comparable templatesScout, Dash, Coda
Building a fully custom AgentOS appBuild a product