Skip to content
Navigation

Web UI and API server for running Exo agents via HTTP, WebSocket, and SSE.

python
from exo_server import (
    # app — FastAPI application
    ChatRequest,
    ChatResponse,
    create_app,
    register_agent,
    # agents — agent management routes
    AgentInfo,
    WorkspaceFile,
    WorkspaceFileContent,
    # sessions — session management
    AppendMessageRequest,
    CreateSessionRequest,
    Session,
    SessionMessage,
    SessionSummary,
    UpdateSessionRequest,
)

Install: Included in the exo-ai monorepo. Clone and run uv sync to install all packages.


Submodules

ModuleDescription
exo_server.appFastAPI app factory, /chat endpoint, agent registry
exo_server.agentsAgent management and workspace routes
exo_server.sessionsSession CRUD and message history
exo_server.streamingWebSocket and SSE streaming endpoints

Public API summary

ExportKindSource
ChatRequestPydantic modelapp
ChatResponsePydantic modelapp
create_appFunctionapp
register_agentFunctionapp
AgentInfoPydantic modelagents
WorkspaceFilePydantic modelagents
WorkspaceFileContentPydantic modelagents
AppendMessageRequestPydantic modelsessions
CreateSessionRequestPydantic modelsessions
SessionPydantic modelsessions
SessionMessagePydantic modelsessions
SessionSummaryPydantic modelsessions
UpdateSessionRequestPydantic modelsessions

Quick start

python
from exo_server import create_app, register_agent
from exo.agent import Agent

# Create agent
agent = Agent(name="helper", model="openai:gpt-4o", instructions="You are helpful.")

# Create and configure app
app = create_app()
register_agent(app, agent, default=True)

# Run with: uvicorn app:app --host 0.0.0.0 --port 8000