Files
microdao-daarion/docs/NODA1-AGENT-VERIFICATION.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

106 lines
3.8 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.
# Перевірка роботи агентів на NODA1
**Сервер:** 144.76.224.179 (node1-daarion)
**Корінь проекту на сервері:** `/opt/microdao-daarion/`
---
## Швидка перевірка (на сервері)
Підключіться по SSH і виконайте скрипт перевірки:
```bash
ssh root@144.76.224.179
cd /opt/microdao-daarion
./scripts/node1/verify_agents.sh
```
Скрипт перевіряє:
1. **Prober metrics** (9108) — чи працює agent-e2e-prober
2. **Prometheus targets** (9090) — чи збираються метрики
3. **POST /debug/agent_ping** (9300) — E2E: Gateway → Router → Memory
4. **GET /health** (9300) — стан Gateway та список агентів (prompt завантажено, Telegram токен налаштовано)
5. **Webhook Helion** — відповідь на тестовий POST на `/helion/telegram/webhook`
---
## Ручні перевірки (на NODA1, localhost)
Виконуйте **після SSH на сервер** (`ssh root@144.76.224.179`).
### Health сервісів
```bash
curl -s http://localhost:9102/health # Router
curl -s http://localhost:9300/health # Gateway (тут список агентів)
curl -s http://localhost:8000/health # Memory Service
curl -s http://localhost:6333/healthz # Qdrant
```
### Список агентів і їх конфіг (Gateway)
```bash
curl -s http://localhost:9300/health | jq '.agents'
```
Очікуваний вивід — по кожному агенту: `name`, `prompt_loaded` (true/false), `telegram_token_configured` (true/false).
### E2E probe (Gateway → Router → Memory)
```bash
curl -s -X POST http://localhost:9300/debug/agent_ping -H "Content-Type: application/json" -d '{}' | jq .
```
Успіх: `router_ok: true`, `memory_ok: true`.
### Статус контейнерів
```bash
docker ps --format 'table {{.Names}}\t{{.Status}}' | grep -E 'gateway|router|memory|qdrant'
```
Очікувані контейнери (залежить від docker-compose): `dagi-gateway-node1`, router, memory-service, qdrant.
### Логи Gateway (останні рядки)
```bash
docker logs dagi-gateway-node1 --tail 50
```
---
## Агенти в Gateway (реєстр)
У `gateway-bot/http_api.py` реєстр **AGENT_REGISTRY** містить:
| agent_id | Webhook path |
|------------|-------------------------------|
| daarwizz | `/telegram/webhook` (default) |
| helion | `/helion/telegram/webhook` |
| greenfood | `/greenfood/telegram/webhook` |
| nutra | `/nutra/telegram/webhook` |
| agromatrix | `/agromatrix/telegram/webhook`|
| alateya | `/alateya/telegram/webhook` |
| druid | `/druid/telegram/webhook` |
| clan | `/clan/telegram/webhook` |
| eonarch | `/eonarch/telegram/webhook` |
Router викликається як: `POST {ROUTER_URL}/v1/agents/{agent_id}/infer`.
---
## Якщо з локальної машини (без SSH)
- Порти 9102, 9300, 8000 тощо на NODA1 можуть бути недоступні ззовні (firewall).
- Тоді єдиний варіант — виконувати перевірки **після SSH на сервер** (команди вище).
- Альтернатива: налаштувати SSH-тунель і тоді `curl http://localhost:9300/health` на своєму ноутбуку через тунель.
---
## Посилання
- **PROJECT-MASTER-INDEX.md** — єдина точка входу до документації, порти, сервіси.
- **NODA1-CURRENT-STATUS-2026-01-26.md** — поточний статус NODA1, health endpoints.
- **gateway-bot/http_api.py** — реєстр агентів, `/health`, `/debug/agent_ping`.