You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

63 lines
2.4 KiB

from contextlib import asynccontextmanager
from agentscope_runtime.engine import AgentApp
from database import init_db, async_engine
from modules.auth.router import router as auth_router
from modules.org.router import router as org_router
from modules.rbac.router import router as rbac_router
from modules.wecom.router import router as wecom_router
from modules.agent_manager.router import router as agent_manager_router
from modules.task.router import router as task_router
from modules.monitor.router import router as monitor_router
from modules.mcp_registry.router import router as mcp_router
from modules.flow_engine.router import router as flow_router
from modules.flow_engine.gateway import gateway_router
from modules.audit.router import router as audit_router
from modules.document.router import router as document_router
from modules.notification.router import router as notification_router
from modules.system.router import router as system_router
from modules.rag.router import router as rag_router
from modules.chat.router import router as chat_router
from modules.custom_tool.router import router as custom_tool_router
from websocket_manager import ws_manager
from middleware.rbac_middleware import rbac_middleware
from middleware.rate_limiter import rate_limit_middleware
from middleware.cache_manager import cache_manager
@asynccontextmanager
async def lifespan(app: AgentApp):
await init_db()
await cache_manager.connect()
yield
await cache_manager.disconnect()
await async_engine.dispose()
app = AgentApp(
app_name="Enterprise AI Platform",
app_description="企业级 AI Agent 平台 - 双RBAC/企微集成/无代码流编排",
lifespan=lifespan,
docs_url="/docs",
redoc_url=None,
)
app.middleware("http")(rate_limit_middleware)
app.middleware("http")(rbac_middleware)
app.include_router(auth_router)
app.include_router(org_router)
app.include_router(rbac_router)
app.include_router(wecom_router)
app.include_router(agent_manager_router)
app.include_router(task_router)
app.include_router(monitor_router)
app.include_router(mcp_router)
app.include_router(flow_router)
app.include_router(gateway_router)
app.include_router(audit_router)
app.include_router(document_router)
app.include_router(notification_router)
app.include_router(system_router)
app.include_router(rag_router)
app.include_router(chat_router)
app.include_router(custom_tool_router)