Example usage
Run the frontend
You can use Dojo, an advanced and customizable option to use as frontend for AG-UI agents.
- Clone the project:
git clone https://github.com/ag-ui-protocol/ag-ui.git - Follow the instructions here to learn how to install the needed dependencies and run the project.
- Remember to install the dependencies in
/ag-ui/typescript-sdkwithpnpm install, and to build the Agno package in/integrations/agnowithpnpm run build. - You can now run your Dojo! It will show our Agno agent as one of the available options.
Chat with your Agno Agent
Done! If you are running Dojo as your front-end, you can now go to http://localhost:3000 in your browser and chat with your Agno Agent.

Core Components
AGUIApp: Wraps Agno agents/teams for in a FastAPI app.serve: Serves the FastAPI AG-UI app using Uvicorn.
AGUIApp uses helper functions for routing.
AGUIApp Class
Main entry point for Agno AG-UI apps.
Initialization Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
agent | Optional[Agent] | None | Agno Agent instance. |
team | Optional[Team] | None | Agno Team instance. |
settings | Optional[APIAppSettings] | None | API configuration. Defaults if None. |
api_app | Optional[FastAPI] | None | Existing FastAPI app. New one created if None. |
router | Optional[APIRouter] | None | Existing APIRouter. New one created if None. |
app_id | Optional[str] | None | App identifier (autogenerated if not set). |
name | Optional[str] | None | Name for the App. |
description | Optional[str] | None | Description for the App. |
agent or team, not both.
Key Method
| Method | Parameters | Return Type | Description |
|---|---|---|---|
get_app | use_async: bool = True | FastAPI | Returns configured FastAPI app (async by default). Sets prefix, error handlers, CORS, docs. |
Endpoints
Endpoints are available at the specifiedprefix (default /v1).
1. POST /agui
This is the main entrypoint to interact with your Agno Agent or Team.
It expects a RunAgentInput object (from the ag-ui-protocol package) as defined by the protocol. You can read more about it in their docs.
Serving the Application (serve)
Serves the FastAPI app using Uvicorn.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
app | Union[str, FastAPI] | N/A | FastAPI app instance or import string (Required). |
host | str | "localhost" | Host to bind. |
port | int | 7777 | Port to bind. |
reload | bool | False | Enable auto-reload for development. |