mirror of
https://gitverse.ru/kpa39l/vesti.git
synced 2026-09-29 09:55:03 +00:00
35 lines
1.8 KiB
Markdown
35 lines
1.8 KiB
Markdown
# Ctrl-C: VESTI — новостной конвейер
|
|
|
|
## Что это
|
|
|
|
Конвейер новостей: краулер источников → классификатор (LLM) → банк статей →
|
|
веб-интерфейс отбора (модерация) → публикация в Telegram (@dedinit_vesti)
|
|
и Fediverse (GoToSocial @vesti@dedinit.ru).
|
|
|
|
## Стек
|
|
|
|
FastAPI + Jinja2 (vesti-web, :8400), publisher-service (Docker, :8410),
|
|
SQLite db/vesti.db, локальная LLM — Ollama qwen3:8b-nothink.
|
|
Фронтенд — локальный Bootstrap 5.3 (без CDN), без htmx/JS-фреймворков.
|
|
|
|
## Правила
|
|
|
|
- **ВСЕ изменения — через OpenSpec** (change в openspec/changes/), перед каждым
|
|
планируемым изменением — **grill-with-docs** (обязательно, AGENT.MD).
|
|
- НЕ начинать правки кода, пока change не создан и `openspec validate` не чисто.
|
|
- После правок — STATUS.md/TODO.md + бэкап (автокрон, вручную не запускать).
|
|
- Дата в UI — фильтр `| dt` (ЧЧ:ММ ДД.ММ.ГГГГ), markdown — XSS-safe фильтр.
|
|
- Секреты — только в .env, не коммитить; .env.example актуализировать.
|
|
- Ссылки на ресурсы и доступы — фиксировать в файлах проекта.
|
|
|
|
## Запуск / проверка
|
|
|
|
```bash
|
|
cd /opt/vesti
|
|
sudo systemctl restart vesti-web # веб :8400
|
|
docker compose -f services/publisher/docker-compose.yml up -d --build # publisher :8410
|
|
curl -s http://127.0.0.1:8410/healthz
|
|
openspec validate <change-name>
|
|
```
|
|
|
|
Внешний доступ: https://vesti.nixg.ru (Caddy на VPS02, reverse_proxy 10.8.0.2:8400). |