Files
microdao-daarion/PROJECT-MASTER-INDEX.md
2026-02-16 02:15:20 -08:00

561 lines
22 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 📚 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 <agent_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 <agent>` - 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)