---
description: NODA1 (node1-daarion) — контекст, порти, перевірка агентів, типові виправлення
globs: "**/docs/NODA1*.md,**/scripts/node1/**/*.sh,gateway-bot/**/*.py,infra/**/*.yml,NODA1*.md,PROJECT-MASTER-INDEX.md,config/README.md"
alwaysApply: true
---

# NODA1 — Операції та контекст

## Сервер

| Параметр | Значення |
|----------|----------|
| **Hostname** | node1-daarion |
| **IPv4** | 144.76.224.179 |
| **IPv6** | 2a01:4f8:201:2a6::2 |
| **SSH** | `ssh root@144.76.224.179` (IPv4) або `ssh root@'[2a01:4f8:201:2a6::2]'` (IPv6) |
| **Корінь проекту** | `/opt/microdao-daarion/` |

**Credentials (SSH):** у файлі `.cursor/noda1-credentials.local.mdc` (username root, password, host keys). Файл у .gitignore. Для автоматизації: `sshpass -p '<з файлу>' ssh -o StrictHostKeyChecking=accept-new root@144.76.224.179 "..."`.

## Ключові сервіси (порти на сервері, localhost)

| Сервіс | Порт | Health |
|--------|------|--------|
| Router | 9102 | `/health` |
| Gateway | 9300 | `/health` (містить список агентів) |
| Memory | 8000 | `/health` |
| Qdrant | 6333 | `/healthz` |
| RAG | 9500 | `/health` |
| Swapper | 8890 | `/health` |
| Market Data Service | 8893 | `/health` |
| SenpAI MD Consumer | 8892 | `/health` |

Контейнери: `dagi-gateway-node1`, `dagi-router-node1`, `dagi-memory-service-node1`, `dagi-qdrant-node1`, `swapper-service-node1`, `dagi-market-data-node1`, `dagi-senpai-md-consumer-node1`, `ollama`.

## Перевірка агентів

- На сервері: `cd /opt/microdao-daarion && ./scripts/node1/verify_agents.sh`
- Gateway health (список агентів): `curl -s http://localhost:9300/health | jq '.agents'`
- E2E: `curl -s -X POST http://localhost:9300/debug/agent_ping -H "Content-Type: application/json" -d '{}'`

Детально: `docs/NODA1-AGENT-VERIFICATION.md`.

## Типові виправлення

1. **Router unhealthy** — перезапуск: `docker restart dagi-router-node1`.
2. **Gateway не відповідає** — `docker logs dagi-gateway-node1 --tail 100`; при потребі `docker restart dagi-gateway-node1`.
3. **Агент без prompt/token** — перевірити `gateway-bot/http_api.py` (AGENT_REGISTRY) і наявність `*_prompt.txt` та env з токенами на сервері.
4. **Зміни в коді** — задеплоїти на NODA1 (git pull, rebuild, restart відповідних контейнерів згідно з проектом).

## Документація (для агента НОДА1)

Читати при потребі контексту:

| Документ | Шлях | Призначення |
|----------|------|-------------|
| **Master Index** | `PROJECT-MASTER-INDEX.md` | Єдина точка входу до всієї документації, порти, сервіси, швидкі команди |
| **Статус НОДА1** | `NODA1-CURRENT-STATUS-2026-01-26.md` | Поточний статус сервера, health, бекапи, Qdrant collections |
| **Перевірка агентів** | `docs/NODA1-AGENT-VERIFICATION.md` | Як перевіряти агентів на NODA1, health, E2E, webhook |
| **Архітектура агентів** | `docs/NODA1-AGENT-ARCHITECTURE.md` | Повна схема підключення агентів (якщо файл існує) |
| **Як додавати агентів** | `config/README.md` | Інструкція додавання нових агентів (якщо файл існує) |
