Files
microdao-daarion/MONITOR-NODE-AGENT-ARCHITECTURE.md
Apple 3de3c8cb36 feat: Add presence heartbeat for Matrix online status
- 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
2025-11-27 00:19:40 -08:00

3.2 KiB
Raw Permalink Blame History

Monitor Agent & NodeAgent - Архітектура та Інтеграція

📊 Поточна ситуація

Monitor Agent:

  • НОДА1: Задеплоєно (agent-monitor)
  • НОДА2: Не знайдено (потрібно додати)

NodeAgent:

  • НОДА2: Створено як сервіс (services/node2-nodeagent/)
  • Роль: Координатор ноди (не агент для відображення)
  • Функції: Управління Swoper, Memory, Health checks, Self-healing

🎯 Правильна архітектура

1. Monitor Agent на кожній НОДА

Призначення:

  • Збір подій та метрик з локальної ноди
  • Відправка в єдиний Memory Service
  • Локальне логування для швидкого доступу

Архітектура:

НОДА1 (Monitor Agent) ──┐
                        │
НОДА2 (Monitor Agent) ──┼──► Memory Service (PostgreSQL)
                        │         ├──► Qdrant (Vector)
НОДА3 (Monitor Agent) ──┘         ├──► Milvus (Long-range)
                                  └──► Neo4j (Graph)

2. NodeAgent vs Monitor Agent

NodeAgent (Сервіс):

  • Координатор ноди (backend service)
  • Управління ресурсами
  • Health checks
  • Self-healing
  • НЕ відображається як агент в UI

Monitor Agent (Агент):

  • Збір та аналіз подій
  • Інтеграція з Memory Service
  • Чат з користувачем
  • Відображається в UI як агент

Рекомендація:

  • NodeAgent залишається як backend service
  • Monitor Agent відображається в кабінеті НОДИ
  • Monitor Agent використовує NodeAgent для доступу до ресурсів

🔧 План інтеграції

Крок 1: Додати Monitor Agent на НОДА2

// src/api/node2Agents.ts
{
  id: 'agent-monitor-node2',
  name: 'Monitor Agent',
  role: 'System Monitoring & Event Logging (Node-2)',
  model: 'local_qwen3_8b',
  backend: 'local',
  status: 'active',
  node: 'node-2',
  priority: 'high',
  category: 'System',
  type: 'worker',
  department: 'System',
}

Крок 2: Створити API для автоматичного збереження

Endpoint: /api/memory/monitor-events

Функціональність:

  • Автоматичне збереження подій з WebSocket
  • Батчинг для оптимізації
  • Збереження в PostgreSQL, Qdrant, Milvus, Neo4j

Крок 3: Підключити до кабінета НОДИ

Відображення:

  • Monitor Agent в списку агентів ноди
  • NodeAgent як сервіс (не агент)
  • Метрики та події від Monitor Agent

📝 Детальний план

1. Додати Monitor Agent на НОДА2

2. Створити Memory Service Integration

3. Оптимізувати збір метрик (батчинг)

4. Підключити до кабінета НОДИ