{"message":"Core Agent Loop API","version":"1.0.0","endpoints":{"agent_stream":"/api/v2/agent/stream","agent_websocket":"/api/v2/agent/ws?thread_id={thread_id}&user_id={user_id}","agent_websocket_v2":"/api/v2/agent/ws/v2?thread_id={thread_id}&user_id={user_id} (no scenario detection)","agent_websocket_v3":"/api/v2/agent/ws/v3?thread_id={thread_id}&user_id={user_id} (dynamic scenario switching)","agent_websocket_v4":"/api/v2/agent/ws/v4?thread_id={thread_id}&user_id={user_id} (redis-backed worker bridge)","notifications_ws":"/api/v2/notifications/ws?userToken={token}&user_id={user_id} (user-level notifications)","agent_test":"/api/v2/agent/test","health":"/health","ws_test_client":"/static/websocket_test.html","feishu_webhook":"/api/v2/gateway/feishu/webhook (Feishu/Lark event subscription; mounted when ENABLE_FEISHU_GATEWAY=true)"}}