# 📚 MASTER INDEX — MicroDAO / DAARION / DAGI **Оновлено:** 2026-02-11 **Призначення:** Єдина точка входу до всієї документації проекту --- ## Session Start (Canonical) - Старт кожної нової сесії: `docs/SESSION_STARTER.md` - Консолідація та маркування старих/нових/фактичних доків: `docs/consolidation/README.md` - Керований список ключових документів і статусів: `docs/consolidation/docs_registry_curated.csv` --- ## 🗂️ Де що лежить ### Основні репозиторії | Репо | Шлях на ноутбуку | Призначення | |------|------------------|-------------| | **microdao-daarion** (PRODUCTION) | `/Users/apple/github-projects/microdao-daarion/` | Основний код, docker-compose, gateway-bot | | MicroDAO 3 (старий) | `/Users/apple/Desktop/MicroDAO/MicroDAO 3/` | Попередня версія, деякі промпти | | daarion-ai-city | `/Users/apple/github-projects/daarion-ai-city/` | Сайт DAARION.city | | node2 (допоміжний) | `/Users/apple/node2/` | Допоміжна документація | ### NODA1 (Production Server) | Параметр | Значення | |----------|----------| | **IP** | `144.76.224.179` | | **IPv6** | `2a01:4f8:201:2a6::2` | | **SSH** | `ssh root@144.76.224.179` | | **Project Root** | `/opt/microdao-daarion/` | | **Docker Network** | `dagi-network` | | **Hardware** | Hetzner GEX44, NVIDIA RTX 4000 SFF Ada (20GB VRAM) | ### NODA1 Sync Policy (Repo ↔ Runtime) **Канонічна правда:** GitHub `origin/main`. На NODA1: - `/opt/microdao-daarion` — **єдиний deploy root** (канон runtime). - `/root/microdao-daarion` не використовується як runtime tree. - Перед/після змін запускати `ops/drift-check.sh` (контроль дріфту mount/labels). **Safe deploy runbook:** `NODA1-SAFE-DEPLOY.md` **Runtime snapshot:** `scripts/node1/snapshot_node1.sh` ### Агент НОДА1 (Cursor) **Де створено:** Агент налаштований у проєкті `/Users/apple/github-projects/microdao-daarion/`, а **не** в `Desktop/MicroDAO` або `node1`. Тому раніше він не знаходився. | Що | Де | |----|-----| | **Cursor Rule** | `.cursor/rules/noda1-operations.mdc` | | **Cursor Skill** | `.cursor/skills/noda1-operations/SKILL.md` | | **Credentials** (локально, не в git) | `.cursor/noda1-credentials.local.mdc` | **Як запустити:** «Підключись до НОДА1» — правило/skill описують SSH та операції на сервері. **Host key (для верифікації):** - RSA 3072: `OzbVMM7CC4SatdE2CSoxh5qgJdCyYO22MLjchXXBIro` - ECDSA 256: `YPQUigtDm3HiEp4MYYeREE+M3ig/2CrZXy2ozr4OWQw` - ED25519 256: `79LG0tKQ1B1DsdVZ/BhLYSX2v08eCWqqWihHtn+Y8FU` ### NODA2 (Development Node) | Параметр | Значення | |----------|----------| | **Тип** | MacBook Pro M4 Max | | **GPU** | Apple Silicon (40-core GPU, 64GB RAM) | | **Project Root** | `/Users/apple/github-projects/microdao-daarion/` | | **Ollama URL** | `http://localhost:11434` | | **Metal Acceleration** | ✅ Enabled | **LLM Моделі (Ollama):** - `gpt-oss:latest` (13 GB) - Fast LLM 20.9B params - `phi3:latest` (2.2 GB) - Lightweight 3.8B params - `starcoder2:3b` (1.7 GB) - Code specialist - `mistral-nemo:12b` (7.1 GB) - Advanced reasoning - `gemma2:27b` (15 GB) - Strategic reasoning - `deepseek-coder:33b` (18 GB) - Advanced code - `qwen2.5-coder:32b` (19 GB) - Code specialist - `deepseek-r1:70b` (42 GB) - Strategic reasoning **Config:** `services/swapper-service/config/swapper_config_node2.yaml` ### NODA3 (AI/ML Workstation) | Параметр | Значення | |----------|----------| | **IP** | `212.8.58.133` | | **SSH** | `ssh zevs@212.8.58.133 -p33147` | | **Hostname** | `llm80-che-1-1` | | **CPU** | AMD Threadripper PRO | | **GPU** | NVIDIA GeForce RTX 3090 (24GB VRAM) | | **RAM** | 128GB | | **Storage** | 1TB NVMe (374GB used, 593GB available) | | **Project Root** | `/home/zevs/microdao-daarion/` | | **Node ID** | `node-3-threadripper-rtx3090` | **Запущені сервіси (Docker):** - `swapper-service-node3` (✅ healthy) - порти 8890-8891 - `dagi-router-node3` (⚠️ unhealthy) - порт 9102 - `postgres-daarion` - порт 5432 - `neo4j-daarion` - порти 7474, 7687 - `qdrant-daarion` - порти 6333-6334 - `gitlab` - порти 8922, 8929, 8443 **LLM Моделі (Ollama):** - `qwen3:32b` (20 GB) - Primary LLM, 32B params - `llama3:latest` (4.7 GB) - Fast responses **ComfyUI:** - **Path:** `/home/zevs/ComfyUI/` - **Size:** 5.8 GB - **Port:** 8188 - **Status:** Встановлено (запускається вручну) - **Purpose:** Image/Video generation workflows **LTX-2 Video Generation Model:** - **Path:** `/home/zevs/models/LTX-2/` - **Size:** 293 GB (!) - **Type:** Diffusion audio-video foundation model - **Model:** LTX-2 19B parameters - **Variants:** - `ltx-2-19b-distilled.safetensors` (full precision) - `ltx-2-19b-distilled-fp8.safetensors` (quantized) - **Capabilities:** Text-to-Video, Image-to-Video - **Languages:** en, de, es, fr, ja, ko, zh, it, pt - **License:** LTX-2 Community License - **ArXiv:** 2601.03233 **Config:** `services/swapper-service/config/swapper_config_node3.yaml` --- ## 🎯 AGENT REGISTRY (Single Source of Truth) **Дата впровадження:** 2026-01-29 ### Canonical Source ``` config/agent_registry.yml ←── ЄДИНЕ ДЖЕРЕЛО ІСТИНИ │ │ python3 tools/agents generate ▼ ┌────────────────────────────────────────────────────────┐ │ Generated configs (НЕ редагувати вручну!) │ │ │ │ • gateway-bot/agent_registry.json → Gateway │ │ • config/router_agents.json → Router │ │ • config/crewai_agents.json → CrewAI │ └────────────────────────────────────────────────────────┘ ``` ### CLI інструменти ```bash python3 tools/agents list # Список агентів python3 tools/agents validate # Валідація (для CI) python3 tools/agents generate # Генерація конфігів python3 tools/agents smoke --id # Smoke test ``` --- ## 🤖 Агенти (повний перелік) ### TOP-LEVEL (User-facing, 13 agents) | Агент | ID | Роль | Telegram | Visibility | |-------|-----|------|----------|------------| | **DAARWIZZ** | daarwizz | Meta-Orchestrator & Digital Mayor | public | public | | **Helion** | helion | Energy Research Lead (Energy Union) | public | public | | **Aletheia** | alateya | Interdisciplinary Research & Lab OS | public | public | | **DRUID** | druid | **Ayurveda & Cosmetics R&D** | public | public | | **NUTRA** | nutra | Nutraceutical Research | public | public | | **Степан Матрікс** | agromatrix | AgroMatrix Platform | public | public | | **GREENFOOD** | greenfood | AI-ERP for Craft Food | public | public | | **CLAN** | clan | Spirit of Community | public | public | | **EONARCH** | eonarch | Consciousness Evolution Guide | public | public | | **YAROMIR** | yaromir | Private Tech Lead | whitelist | private | | **SOUL** | soul | Spiritual Mentor | public | public | | **SENPAI** | senpai | Trading Advisor & Capital Markets | public | public | | **SOFIIA** | sofiia | Chief AI Architect | public | public | ### INTERNAL (Service agents, 2 agents) | Агент | ID | Роль | Scope | |-------|-----|------|-------| | **MONITOR** | monitor | Node Observability & Alerts | node_local | | **DevTools** | devtools | Development Tools | global | **NODA1 runtime (verified 2026-02-11):** 15 active agents = 13 user-facing + 2 internal (`monitor`, `devtools`). **Canonical registry in repo:** 16 agents (додатково `comfy` як internal, поза user-facing health на NODA1). **Webhook URL формат:** `https://gateway.daarion.city/{agent_id}/telegram/webhook` --- ## 📁 Ключові документи ### Архітектура та інфраструктура | Документ | Шлях | Опис | |----------|------|------| | **NODA1-AGENT-ARCHITECTURE.md** | `docs/` | **Повна схема підключення агентів** | | **NODA1-SAFE-DEPLOY.md** | `/` | Canonical деплой-процес для NODA1 | | **ops/README.md** | `ops/` | Операційний runbook (up/down/logs/drift-check/policy) | | **agent_registry.yml** | `config/` | **Canonical Source of Truth для агентів** | | **README.md (config)** | `config/` | Як додавати нових агентів | | INFRASTRUCTURE.md | `docs/` | Порти, сервіси, конфігурація | | infrastructure_quick_ref.ipynb | `docs/` | Швидка довідка | | NODA1-CURRENT-STATUS-2026-01-26.md | `/` | Поточний статус NODA1 | | NODA1-V2-DEPLOYMENT.md | `/` | Детальний deployment report | ### Memory та Qdrant | Документ | Шлях | Опис | |----------|------|------| | canonical_collections.yaml | `/github-projects/microdao-daarion/docs/memory/` | Маппінг колекцій агентів | | MEMORY-RECOVERY-STATUS.md | `/github-projects/microdao-daarion/` | Статус відновлення пам'яті | | DATABASE-PERSISTENCE-AUDIT.md | `/github-projects/microdao-daarion/` | Аудит БД | ### Deployment та Operations | Документ | Шлях | Опис | |----------|------|------| | docker-compose.node1.yml | `/github-projects/microdao-daarion/` | Docker Compose для NODA1 | | DEPLOYMENT-COMPLETE-REPORT.md | `/github-projects/microdao-daarion/` | Звіт deployment | | TELEGRAM-RECOVERY-AND-MONITORING-COMPLETE.md | `/github-projects/microdao-daarion/` | Telegram моніторинг | --- ## 🔌 Сервіси та порти (NODA1) | Сервіс | Порт | Health Endpoint | |--------|------|-----------------| | **Router** | 9102 | `/health` | | **Gateway** | 9300 | `/health` | | **Memory Service** | 8000 | `/health` | | **RAG Service** | 9500 | `/health` | | **Swapper Service** | 8890 | `/health` | | **Qdrant** | 6333 | `/healthz` | | **Vision Encoder** | 8001 | `/health` | | **Parser Pipeline** | 8101 | `/health` | | **PostgreSQL** | 5432 | - | | **Redis** | 6379 | - | | **NATS** | 4222 | - | | **Grafana** | 3030 | `/api/health` | | **Prometheus** | 9090 | `/-/healthy` | | **Market Data Service** | 8893 | `/health` | | **SenpAI MD Consumer** | 8892 | `/health` | --- ## 💾 Qdrant Collections (агенти) | Collection | Призначення | |------------|-------------| | `helion_messages` | Повідомлення Helion | | `helion_docs` | База знань Helion | | `helion_memory_items` | Пам'ять Helion | | `nutra_messages` | Повідомлення NUTRA | | `nutra_food_knowledge` | База харчових продуктів | | `agromatrix_messages` | Повідомлення AgroMatrix | | `greenfood_messages` | Повідомлення GreenFood | | `druid_docs` | База знань Druid | | `druid_legal_kb` | Юридична база Druid | | `daarwizz_docs` | База знань DAARWIZZ | | `memories` | Загальна пам'ять | | `messages` | Історія повідомлень | | `cm_text_1024_v1` | Канонічна колекція embeddings | --- ## 🛠️ Зміни 2026-02-10 ### ✅ Infrastructure Documentation Update **Що зроблено:** 1. **Додано повну документацію NODA2 (Development Node):** - MacBook Pro M4 Max конфігурація - 8 LLM моделей Ollama (gpt-oss, phi3, deepseek-coder, etc.) - Swapper config для NODE2 2. **Додано повну документацію NODA3 (AI/ML Workstation):** - Hardware: AMD Threadripper PRO + RTX 3090 24GB - SSH: `zevs@212.8.58.133 -p33147` - Docker сервіси: swapper, router, postgres, neo4j, qdrant, gitlab - LLM моделі: qwen3:32b (20GB), llama3:latest (4.7GB) - **ComfyUI** (5.8 GB) - Image/Video generation на порту 8188 - **LTX-2 Video Model** (293 GB!) - Text-to-Video, Image-to-Video generation - Swapper config для NODE3 3. **Виправлено розбіжності між документацією та реальним стеком:** - Оновлено реальні моделі замість документованих - Додано інформацію про ComfyUI та LTX-2 --- ## 🛠️ Зміни 2026-02-11 ### ✅ NODA1 Runtime Alignment + Routing Fixes 1. **Deployment drift fixed** - Єдиний deploy root: `/opt/microdao-daarion` - `drift-check` активний; runtime mounts/labels вирівняні 2. **Router policy stabilized** - `monitor` і `devtools` за замовчуванням ідуть у local (`swapper+ollama`, `qwen3-8b`) - `devtools` має умовний cloud fallback (`deepseek-cloud`) для heavy task types 3. **Memory service schema drift fixed** - `GET /stats` повертає `200` (раніше було `500` через відсутні таблиці) 4. **Senpai market-data stack confirmed** - `senpai-md-consumer` healthy, NATS connected, features/signals counters зростають 5. **AgroMatrix live check** - Router infer `200` (backend: `deepseek-cloud`) - Колекції: `agromatrix_messages=359`, `agromatrix_docs=327`, `agromatrix_memory_items=0` - Facts у Postgres: `264` --- ## 🛠️ Зміни 2026-02-09 ### ✅ SenpAI Market Data Integration **Що зроблено:** 1. **Market Data Pipeline deployed на NODE1:** - `dagi-market-data-node1` (порт 8893) — Binance + Bybit WS, SQLite, NATS - `dagi-senpai-md-consumer-node1` (порт 8892) — features, signals, alerts 2. **Tool `market_data` інтегровано в Router:** - Файл: `services/router/tool_manager.py` — новий tool PRIORITY 7 - Файл: `services/router/agent_tools_config.py` — Senpai має `["market_data"]` - Senpai може запитувати real-time ціни та аналітику через tool call 3. **Промпт Senpai оновлено:** - Файл: `gateway-bot/senpai_prompt.txt` - Додано опис `market_data` tool з прикладами використання - Змінено порядок пошуку: market_data → web_search → memory_search 4. **SOWA:** працює штатно — в груповому чаті потрібно звертатись по імені ("Сенпай", "Gordon", "@SenpAI_agent_bot") --- ## 🛠️ Зміни 2026-01-29 ### ✅ UNIFIED AGENT REGISTRY (Major Update) **Commits:** - `1c80cef` - feat: Unified Agent Registry - Single Source of Truth - `c627d8c` - feat: Agent Registry runtime integration on NODA1 **Що зроблено:** 1. **Canonical Source of Truth** (`config/agent_registry.yml`) - 13 агентів (11 top-level + 2 internal) - Єдине місце для всіх конфігурацій - Feature flag `AGENT_REGISTRY_ENABLED=true` 2. **CLI інструменти** (`tools/agents`) - `list` - список агентів - `validate` - валідація для CI - `generate` - генерація конфігів - `smoke --id ` - smoke test 3. **Runtime інтеграція:** - Gateway: `registry_loader.py` → `agent_registry.json` - Router: `registry_loader.py` → `router_agents.json` - CrewAI: `registry_loader.py` → `crewai_agents.json` 4. **Нові агенти:** - **YAROMIR** - Private Tech Lead (whitelist access) - **SOUL** - Spiritual Mentor 5. **Виправлені ролі:** - **DRUID** → Ayurveda & Cosmetics R&D (не "Knowledge Search") - **CLAN** → Spirit of Community (не "Community Manager") 6. **Документація:** - `docs/NODA1-AGENT-ARCHITECTURE.md` - повна схема - `config/README.md` - як додавати агентів ### Як додати нового агента ```bash # 1. Редагувати registry nano config/agent_registry.yml # 2. Створити prompt файл touch gateway-bot/new_agent_prompt.txt # 3. Валідувати python3 tools/agents validate # 4. Згенерувати конфіги python3 tools/agents generate # 5. Smoke test python3 tools/agents smoke --id new_agent # 6. Restart gateway docker restart dagi-gateway-node1 ``` --- ## 🛠️ Зміни 2026-01-28 ### Додано нових агентів 1. **Alateya** — R&D, біотех, інновації (з CrewAI командою "професорів") 2. **CLAN (Spirit)** — Дух Общини 3. **EONARCH** — Еволюція свідомості --- ## 📋 Швидкі команди ### Перевірка статусу NODA1 ```bash ssh root@144.76.224.179 "docker ps --format 'table {{.Names}}\t{{.Status}}'" ``` ### Логи gateway ```bash ssh root@144.76.224.179 "docker logs dagi-gateway-node1 --tail 50" ``` ### Health checks ```bash curl http://144.76.224.179:9102/health # Router curl http://144.76.224.179:9300/health # Gateway curl http://144.76.224.179:8000/health # Memory curl http://144.76.224.179:6333/healthz # Qdrant curl http://144.76.224.179:8000/stats # Memory stats ``` ### Агентний smoke (Router infer API v2) ```bash curl -sS -H "Content-Type: application/json" \ -d '{"prompt":"ping","max_tokens":16,"temperature":0,"metadata":{"agent_id":"agromatrix"}}' \ http://144.76.224.179:9102/v1/agents/agromatrix/infer ``` ### Qdrant collections ```bash curl -s http://144.76.224.179:6333/collections | jq '.result.collections[] | {name, points_count}' ``` --- ## 🔍 Логи агента Helion (NODA1) **Де дивитися:** Gateway приймає webhook, Router викликає LLM (DeepSeek) і tools. ```bash # Логи gateway (вхід повідомлень, prober) ssh root@144.76.224.179 "docker logs dagi-gateway-node1 --tail 100" # Логи router (inference, tool calls, DSML) ssh root@144.76.224.179 "docker logs dagi-router-node1 --tail 150" ``` **Типова причина некоректних відповідей у чаті:** у Router логах з’являється `DSML detected in 2nd LLM response` — DeepSeek іноді повертає розмітку DSML замість звичайного тексту після tool call. Router тоді робить 3-й виклик для синтезу відповіді або показує fallback. Покращення: у коді Router перед заміною відповіді спочатку вирізається тільки блок DSML, зберігається текст до нього (якщо є). --- ## ⚠️ Відомі проблеми 1. ~~**gateway → router: "All connection attempts failed"**~~ — ✅ Виправлено (router підключено до dagi-network) 2. ~~**Alateya токен не був раніше доданий**~~ — ✅ Виправлено 3. ~~**Clan, Eonarch не були в production репо**~~ — ✅ Виправлено 4. ~~**Розбіжності в ролях агентів між Gateway/Router/CrewAI**~~ — ✅ Виправлено (Unified Registry) 5. **Helion іноді відповідає некоректно** — пов’язано з DSML у другій відповіді DeepSeek; у Router додано збереження тексту перед DSML-блоком (див. вище). --- ## 📊 Схема підключення (спрощена) ``` TELEGRAM → GATEWAY:9300 → ROUTER:8000 → LLM (Ollama/DeepSeek) ↓ ↓ Memory:8000 CrewAI:9010 ↓ Qdrant + Neo4j + Postgres ``` Повна схема: `docs/NODA1-AGENT-ARCHITECTURE.md` --- ## 📈 Market Data Pipeline (SenpAI) **Дата впровадження:** 2026-02-09 ### Архітектура ``` Binance WS ─┐ ┌─ senpai.features.{symbol} Bybit WS ───┤→ market-data-service ──NATS──→ senpai-md-consumer ──NATS──→ senpai.signals.{symbol} │ (порт 8893) md.events.> (порт 8892) └─ senpai.alerts └─ SQLite + JSONL ``` ### Компоненти | Сервіс | Контейнер | Порт | Призначення | |--------|-----------|------|-------------| | **market-data-service** | `dagi-market-data-node1` | 8893 | WS producer: Binance+Bybit → NATS `md.events.>` | | **senpai-md-consumer** | `dagi-senpai-md-consumer-node1` | 8892 | NATS consumer: features, signals, alerts | ### Ключові endpoints ```bash # Producer curl http://localhost:8893/health curl http://localhost:8893/metrics curl http://localhost:8893/bus-stats curl "http://localhost:8893/latest?symbol=BTCUSDT" # Consumer curl http://localhost:8892/health curl http://localhost:8892/stats curl "http://localhost:8892/features/latest?symbol=BTCUSDT" curl http://localhost:8892/metrics ``` ### NATS subjects | Subject | Publisher | Payload | |---------|-----------|---------| | `md.events.trade.{symbol}` | market-data-service | TradeEvent | | `md.events.quote.{symbol}` | market-data-service | QuoteEvent | | `senpai.features.{symbol}` | senpai-md-consumer | FeatureSnapshot (11 features) | | `senpai.signals.{symbol}` | senpai-md-consumer | TradeSignal (long/short) | | `senpai.alerts` | senpai-md-consumer | AlertEvent (gaps/latency) | ### Файли | Шлях | Опис | |------|------| | `services/market-data-service/` | Код producer-сервісу | | `services/senpai-md-consumer/` | Код consumer-сервісу | | Docker volume `market-data-node1` | SQLite DB + JSONL events log | --- **Автор:** Cursor Agent **Останнє оновлення:** 2026-02-11 (runtime alignment + routing policy + memory schema fix)