"""FastAPI application entry point."""
import structlog
from fastapi import FastAPI
from navi.api.routes import agents, health, messages, sessions
from navi.api.websocket import router as ws_router
from navi.config import settings
structlog.configure(
wrapper_class=structlog.make_filtering_bound_logger(
getattr(__import__("logging"), settings.log_level)
),
)
app = FastAPI(
title="Navi",
description="Modular agent system — REST API and WebSocket",
version="0.1.0",
)
app.include_router(health.router)
app.include_router(agents.router)
app.include_router(sessions.router)
app.include_router(messages.router)
app.include_router(ws_router)