- 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
5.0 KiB
5.0 KiB
📊 Monitor Agent - Архітектура пам'яті
🎯 Структура пам'яті
1. Загальна пам'ять (Global Memory)
Agent ID: monitor
Призначення:
- Агрегація подій з усіх НОД та мікроДАО
- Системні події всього DAARION
- Загальна статистика та метрики
Використання:
- Загальний Monitor Agent (DAARION кабінет)
- Всі Monitor Agent мають доступ до загальної пам'яті
2. Пам'ять для НОДИ (Node-Specific Memory)
Agent ID: monitor-node-{node_id}
Приклади:
monitor-node-1- пам'ять Monitor Agent для НОДА1monitor-node-2- пам'ять Monitor Agent для НОДА2monitor-node-3- пам'ять Monitor Agent для НОДА3
Призначення:
- Події конкретної НОДИ
- Метрики та статуси ноди
- Агенти та сервіси ноди
Використання:
- Monitor Agent конкретної НОДИ (NodeMonitorChat)
- Має доступ до загальної пам'яті + пам'яті своєї ноди
3. Пам'ять для мікроДАО (MicroDAO-Specific Memory)
Agent ID: monitor-microdao-{microdao_id}
Приклади:
monitor-microdao-daarion-dao- пам'ять Monitor Agent для DAARIONmonitor-microdao-greenfood- пам'ять Monitor Agent для GREENFOODmonitor-microdao-energy-union- пам'ять Monitor Agent для ENERGY UNION
Призначення:
- Події конкретного мікроДАО
- Агенти та канали мікроДАО
- Проєкти та задачі мікроДАО
Використання:
- Monitor Agent конкретного мікроДАО (MicroDaoMonitorChat)
- Має доступ до загальної пам'яті + пам'яті свого мікроДАО
🔄 Як працює пам'ять
Збереження подій
- WebSocket події →
useMonitorEventshook - Батчинг →
addMonitorEventToBatch(10 подій або 5 секунд) - Збереження → Memory Service
/api/memory/monitor-events/batch - Розподіл:
- Загальна пам'ять:
monitor(всі події) - Специфічна пам'ять:
monitor-node-{node_id}абоmonitor-microdao-{microdao_id}
- Загальна пам'ять:
Отримання контексту
- Monitor Agent отримує запит
- Запитує пам'ять:
- Загальна пам'ять (
monitor) - половина контексту - Специфічна пам'ять (
monitor-node-{node_id}абоmonitor-microdao-{microdao_id}) - половина контексту
- Загальна пам'ять (
- Комбінує контекст для формування відповіді
📊 Приклад роботи
Monitor Agent для НОДА2
Пам'ять:
- Загальна:
monitor(всі події системи) - Специфічна:
monitor-node-2(події НОДА2)
Контекст для відповіді:
Загальні події системи:
- [node_event] НОДА1 оновлено статус
- [agent_event] Агент Solarius задеплоєно
- [system_event] Оновлено конфігурацію
Події НОДА2:
- [agent_event] Агент Sofia активний
- [node_event] НОДА2 CPU: 45%
- [system_event] Swapper Service працює
Monitor Agent для DAARION мікроДАО
Пам'ять:
- Загальна:
monitor(всі події системи) - Специфічна:
monitor-microdao-daarion-dao(події DAARION)
Контекст для відповіді:
Загальні події системи:
- [node_event] НОДА1 оновлено статус
- [agent_event] Агент Solarius задеплоєно
Події МікроДАО daarion-dao:
- [agent_event] DAARION Core команда активна
- [project_event] Створено новий проєкт
- [channel_event] Новий канал створено
✅ Переваги
-
Загальна пам'ять:
- Агрегація даних з усієї системи
- Загальна статистика
- Системні події
-
Специфічна пам'ять:
- Детальна інформація про конкретну НОДУ/мікроДАО
- Швидкий доступ до релевантних подій
- Оптимізація контексту
-
Комбінований доступ:
- Monitor Agent має доступ до обох типів пам'яті
- Більш інформативні відповіді
- Контекстна релевантність
Last Updated: 2025-01-27
Status: ✅ Архітектура пам'яті реалізована