benilux: концепция v2 — всё через бота (Cosmos как движок), изоляция KB только Бенелюкс, автономность от инфры Олега (Cloudflare Tunnel, свой ключ)

This commit is contained in:
2026-06-29 17:26:39 +00:00
parent b3abd3a59a
commit 99fd0c9459

View File

@@ -153,7 +153,7 @@ Nextcloud, медиасервер (Plex/«Flex»), торрент-клиент,
- **Память бота (openclaw memory / pgvector)** переиндексируется только из этой папки. Проверить, что в индекс не попали общие записи от предыдущего пилота.
- Олег как админ правит KB Бенелюкса через его Gitea; клиент видит результат через ответы бота.
> ⚠️ Сейчас у пилота KB могла быть общая — **аудит при внедрении:** что именно сейчас в памяти бота Алекс, нет ли там чужой инфры. См. [#открытые-вопросы](#9-открытые-вопросы).
> ⚠️ Сейчас у пилота KB могла быть общая — **аудит при внедрении:** что именно сейчас в памяти бота Алекс, нет ли там чужой инфры. См. [#открытые-вопросы](#8-открытые-вопросы-уточнить-у-олегаклиента).
---
@@ -194,40 +194,43 @@ Nextcloud, медиасервер (Plex/«Flex»), торрент-клиент,
**После этих шагов коробка автономна:** свой вход (Cloudflare), свои мозги (свой ключ), своя память (своя KB), свой сторож. Олег — только админ-доступ для поддержки.
> ⚠️ Cloudflare Tunnel vs текущий VPS-шлюз — это развилка по входу. Cloudflare бесплатен и автономен, но трафик идёт через Cloudflare (для домашнего сервиса ок). Решить при внедрении (раздел 9).
> ⚠️ Cloudflare Tunnel vs текущий VPS-шлюз — это развилка по входу. Cloudflare бесплатен и автономен, но трафик идёт через Cloudflare (для домашнего сервиса ок). Решить при внедрении (раздел 8).
---
## 7. План внедрения (по шагам, с проверками)
**Шаг 0 — замер.** `free -m`, `df -h /mnt/pve/Work`, `pct list` + RAM каждого LXC. Зафиксировать реальный свободный объём ОЗУ. ✅ если свободно ≥3 ГБ — продолжаем; если нет — сначала поджать SwarmClaw/обсудить апгрейд.
**Шаг 0 — замер + аудит KB.** `free -m`, `df -h /mnt/pve/Work`, `pct list` + RAM каждого LXC. **Проверить, что сейчас в памяти бота Алекс** — нет ли там общей инфры Олега (раздел 4). ✅ свободно ≥3 ГБ ОЗУ и KB понятна.
**Шаг 1 — Cosmos Cloud.** Поставить на хост (или в LXC с nesting). Подключить домен `app.umnybot.ru` через VPS-шлюз. Настроить SSO/2FA. ✅ клиент логинится, видит пустой App Store и текущие контейнеры.
**Шаг 1 — Cosmos Cloud (движок).** Поставить на хост (или LXC с nesting). Настроить, проверить API. ✅ через API поднимается тестовый контейнер.
**Шаг 2 — общая медиа-папка + торрент.** Создать `/mnt/pve/Work/media`. Поставить qBittorrent (volume = эта папка). ✅ тестовая закачка появляется в папке.
**Шаг 2 — деплой-инструмент бота.** Написать `cosmos-deploy.sh <app>` с каталогом алиасов, добавить в tools агента Алекс через approval-гейт. ✅ команда боту «поставь тест» поднимает контейнер с подтверждением в TG.
**Шаг 3 — Plex.** Библиотека на `/mnt/Work/media`. ✅ тестовый файл играет Direct Play на ТВ/телефоне клиента.
**Шаг 3 — общая медиа-папка + торрент.** Создать `/mnt/pve/Work/media`. Бот ставит qBittorrent (volume = эта папка). ✅ тестовая закачка появляется в папке.
**Шаг 4 — Nextcloud (light).** External Storage → `/mnt/Work/media`. ✅ скачанный торрент виден и в облаке, и в Plex (проверка сквозной интеграции — ядро ТЗ).
**Шаг 4 — Plex.** Библиотека на `/mnt/Work/media`. ✅ тестовый файл играет Direct Play на ТВ/телефоне клиента.
**Шаг 5 — Open WebUI.** Бэкенд OmniRoute. ✅ чат отвечает в браузере.
**Шаг 5 — Nextcloud (light).** External Storage → `/mnt/Work/media`. ✅ скачанный торрент виден и в облаке, и в Plex (сквозная интеграция — ядро ТЗ).
**Шаг 6 — Hermes (GLM 5.2).** Сначала проверить баланс ключа GLM. Поставить, Telegram + `hermes.umnybot.ru`. ✅ бот отвечает.
**Шаг 6 — изоляция KB.** Создать репозиторий `kb-benelux` в Gitea Александра (LXC104), наполнить только инфрой Бенелюкса, переключить синк/память бота на него. ✅ бот отвечает по Бенелюксу, не знает про НИИКН/dttb.
**Шаг 7 — Homepage как портал.** Плитки на всё, живые виджеты. Сделать стартовой. ✅ клиент с одной страницы попадает в любой сервис.
**Шаг 7 — автономный вход (Cloudflare Tunnel).** Поставить `cloudflared` на коробку, перевести `umnybot.ru` на Cloudflare DNS, опубликовать сервисы. ✅ домены работают без VPS-шлюза Олега.
**Шаг 8 — каталог App Store + инструкция.** Подготовить карточки лёгких приложений (Vaultwarden, Uptime Kuma, AdGuard) + короткая памятка клиенту «как поставить сервис самому». ✅ клиент ставит что-то сам в один клик.
**Шаг 8 — Open WebUI + Hermes (GLM 5.2).** Проверить баланс GLM, поставить. Open WebUI `chat.*`, Hermes — TG + `hermes.*`. ✅ оба отвечают на своём ключе.
**Шаг 9 — Homepage как «рабочий стол».** Плитки на всё, живые виджеты, стартовая. ✅ клиент с одной страницы попадает в любой сервис, а бот ставит новые по запросу.
---
## 6. Открытые вопросы (уточнить у Олега/клиента)
## 8. Открытые вопросы (уточнить у Олега/клиента)
- [ ] **Баланс ключа GLM 5.2** — в KB `glm/glm-5.1` был «баланс 0». Hermes на нём не заведётся. Проверить/пополнить.
- [ ] **Апгрейд ОЗУ** до 32 ГБ DDR3 — готов ли клиент на железо? Определяет, P1 или полный набор.
- [ ] **Plex и транскод** — проговорить ограничение Direct Play (4K на старом ТВ будет тормозить). Возможно, клиенту хватит — но ожидания выровнять заранее.
- [ ] **SwarmClaw для клиента** — ограниченный аккаунт в текущем инстансе (рекомендация) или поджать/вынести? Влияет на бюджет ОЗУ.
- [ ] **Cosmos vs текущий NPM** — Cosmos на новые сервисы, NPM коробки остаётся на SwarmClaw/pve; или со временем всё на Cosmos? (постепенная миграция).
- [ ] **NetBird на сам хост** — давно висящий TODO ([[../dttb/proxmox-pve-147]]); упростит управление, стоит закрыть в ходе работ.
- [ ] **Аудит KB пилота** — что сейчас в памяти бота Алекс? Если там общая инфра Олега — вычистить (требование автономности/безопасности).
- [ ] **Вход: Cloudflare Tunnel или остаёмся на VPS-шлюзе?** Cloudflare = автономность от Олега + работа за динамич. WAN; минус — трафик через Cloudflare. Рекомендация — Cloudflare.
- [ ] **Свой LLM-ключ** (GLM 5.2 / другой) с оплаченным балансом — чтобы боты не зависели от пула Олега. Проверить баланс (у `glm-5.1` в KB был 0).
- [ ] **Апгрейд ОЗУ** до 32 ГБ DDR3 — готов ли клиент на железо? Определяет P1 или полный набор.
- [ ] **Plex и транскод** — проговорить ограничение Direct Play (4K на старом ТВ тормозит). Ожидания выровнять заранее.
- [ ] **SwarmClaw клиенту** — нужен ли вообще, если основной канал бот? Если да — ограниченный аккаунт.
- [ ] **NetBird на сам хост** — висящий TODO ([[../dttb/proxmox-pve-147]]); упростит админ-доступ Олега.
---