Example usage
1
Install the backend dependencies
2
Run the backend
Now let’s run a
AGUIApp
exposing an Agno Agent. You can use the previous code!3
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-sdk
withpnpm install
, and to build the Agno package in/integrations/agno
withpnpm run build
. - You can now run your Dojo! It will show our Agno agent as one of the available options.
4
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. |