Files
microdao-daarion/PROJECT-MASTER-INDEX.md
Apple a46a70c014 fix(ops): Add network aliases and stabilize DNS for NODA1
- docker-compose.node1.yml: Add network aliases (router, gateway,
  memory-service, qdrant, nats, neo4j) to eliminate manual
  `docker network connect --alias` commands
- docker-compose.node1.yml: ROUTER_URL now uses env variable with
  fallback: ${ROUTER_URL:-http://router:8000}
- docker-compose.node1.yml: Increase router healthcheck start_period
  to 30s and retries to 5
- .gitignore: Add noda1-credentials.local.mdc (local-only SSH creds)
- scripts/node1/verify_agents.sh: Improved output with agent list
- docs: Add NODA1-AGENT-VERIFICATION.md, NODA1-AGENT-ARCHITECTURE.md,
  NODA1-VERIFICATION-REPORT-2026-02-03.md
- config/README.md: How to add new agents
- .cursor/rules/, .cursor/skills/: NODA1 operations skill for Cursor

Root cause fixed: Gateway could not resolve 'router' DNS name when
Router container was named 'dagi-staging-router' without alias.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-03 05:55:56 -08:00

294 lines
11 KiB
Markdown
Raw 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-01-29
**Призначення:** Єдина точка входу до всієї документації проекту
---
## 🗂️ Де що лежить
### Основні репозиторії
| Репо | Шлях на ноутбуку | Призначення |
|------|------------------|-------------|
| **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` |
---
## 🎯 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, 11 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 |
### INTERNAL (Service agents, 2 agents)
| Агент | ID | Роль | Scope |
|-------|-----|------|-------|
| **MONITOR** | monitor | Node Observability & Alerts | node_local |
| **DevTools** | devtools | Development Tools | global |
**Webhook URL формат:** `https://gateway.daarion.city/{agent_id}/telegram/webhook`
---
## 📁 Ключові документи
### Архітектура та інфраструктура
| Документ | Шлях | Опис |
|----------|------|------|
| **NODA1-AGENT-ARCHITECTURE.md** | `docs/` | Повна схема підключення агентів |
| **NODA1-AGENT-VERIFICATION.md** | `docs/` | **Перевірка роботи агентів на NODA1** |
| **NODA1-VERIFICATION-REPORT-2026-02-03.md** | `docs/` | Звіт перевірки НОДА1, виправлення ROUTER_URL, рекомендації |
| **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` |
---
## 💾 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-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}}'"
# Повна перевірка агентів (на сервері)
ssh root@144.76.224.179 "cd /opt/microdao-daarion && ./scripts/node1/verify_agents.sh"
```
Детально: `docs/NODA1-AGENT-VERIFICATION.md`
### Логи 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
```
### Qdrant collections
```bash
curl -s http://144.76.224.179:6333/collections | jq '.result.collections[] | {name, points_count}'
```
---
## ⚠️ Відомі проблеми
1. ~~**gateway → router: "All connection attempts failed"**~~ — ✅ Виправлено (router підключено до dagi-network)
2. ~~**Alateya токен не був раніше доданий**~~ — ✅ Виправлено
3. ~~**Clan, Eonarch не були в production репо**~~ — ✅ Виправлено
4. ~~**Розбіжності в ролях агентів між Gateway/Router/CrewAI**~~ — ✅ Виправлено (Unified Registry)
---
## 📊 Схема підключення (спрощена)
```
TELEGRAM → GATEWAY:9300 → ROUTER:8000 → LLM (Ollama/DeepSeek)
↓ ↓
Memory:8000 CrewAI:9010
Qdrant + Neo4j + Postgres
```
Повна схема: `docs/NODA1-AGENT-ARCHITECTURE.md`
---
**Автор:** Cursor Agent
**Останнє оновлення:** 2026-01-29