from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
from fastapi.middleware.cors import CORSMiddleware
from fastapi.responses import RedirectResponse

from api.chat.chat_router import chat_router

app = FastAPI(title="AgentForge v0.3.0 - 五大核心模块实现的基于LangChain的智能体聊天系统")

app.add_middleware(
    CORSMiddleware,
    allow_origins=["*"],
    allow_credentials=True,
    allow_methods=["*"],
    allow_headers=["*"],
)

app.mount("/static", StaticFiles(directory="static"), name="static")

app.include_router(chat_router)


@app.get("/")
def root():
    return RedirectResponse(url="/static/chat.html")


if __name__ == "__main__":
    import uvicorn
    uvicorn.run(app, host="localhost", port=9000)