- matrix-gateway: POST /internal/matrix/presence/online endpoint - usePresenceHeartbeat hook with activity tracking - Auto away after 5 min inactivity - Offline on page close/visibility change - Integrated in MatrixChatRoom component
Agent Cabinet Service
FastAPI сервіс для кабінетів агентів, метрик та CrewAI команд.
🚀 Швидкий старт
Локальний запуск
cd services/agent-cabinet-service
pip install -r requirements.txt
python -m uvicorn app.main:app --host 0.0.0.0 --port 8898 --reload
Docker
docker build -t agent-cabinet-service .
docker run -p 8898:8898 agent-cabinet-service
📡 API Endpoints
1. Health Check
GET /health
2. Отримати метрики агента
GET /api/agent/{agent_id}/metrics
Response:
{
"agent_id": "yaromir",
"agent_name": "Яромир",
"status": "active",
"uptime_hours": 150.5,
"total_requests": 2500,
"successful_requests": 2400,
"failed_requests": 100,
"avg_response_time_ms": 450.5,
"last_active": "2025-11-23T12:00:00Z",
"model": "qwen3:8b",
"model_backend": "ollama",
"node": "node-1",
"is_orchestrator": true,
"team_size": 4,
"sub_agents": [...]
}
3. Отримати CrewAI команди
GET /api/agent/{agent_id}/crews
4. Стати оркестратором
POST /api/agent/{agent_id}/become-orchestrator
5. Створити CrewAI команду
POST /api/agent/{agent_id}/crews/create?crew_name=MyCrew&agents=[...]&tasks=[...]
6. Додати агента до команди
POST /api/agent/{agent_id}/add-sub-agent
Content-Type: application/json
{
"id": "vozhd",
"name": "Вождь",
"role": "Strategic Guardian"
}
7. Видалити агента з команди
POST /api/agent/{agent_id}/remove-sub-agent?sub_agent_id=vozhd
8. Чат з агентом
POST /api/agent/{agent_id}/chat?message=Hello
🔧 Налаштування
Environment Variables
ROUTER_URL- URL DAGI Router (default:http://localhost:9102)
📝 Наступні кроки
- Інтеграція з базою даних - замінити in-memory storage на PostgreSQL
- Реальні метрики - підключити до Prometheus/Grafana
- CrewAI інтеграція - підключити до реального CrewAI сервісу
- Автоматичне створення кабінету - при реєстрації нового агента