# FreeLLMAPI Catalog Proxy Прозрачный кэширующий реверс-прокси для доставки оригинального официального каталога моделей FreeLLMAPI (`api.freellmapi.co/v1/latest`). ## Зачем это нужно FreeLLMAPI не запрашивает список моделей напрямую у сторонних провайдеров (кроме LongCat и SiliconFlow). Для остальных (Routeway, UnoRouter, BazaarLink, OrcaRouter и др.) список моделей подгружается из внешнего подписанного каталога: `https://api.freellmapi.co/v1/latest` (~560 КБ). При прямой загрузке на российских каналах передача файла зависает после первых ~20 КБ из-за DPI/фильтрации больших ответов. Контейнер FreeLLMAPI падает по таймауту, и в базе остаются только предзашитые базовые модели, а добавленные ключи получают пустой список моделей. ## Как это работает 1. Прокси подключается к `https://api.freellmapi.co/v1/latest` через стабильный SOCKS5-маршрут (Германия). 2. Забирает **оригинальные байты** и официальный криптографический заголовок `x-catalog-signature` (Ed25519). 3. Кэширует файл локально на 12 часов. 4. Отдаёт каталог контейнеру FreeLLMAPI по локальной сети (`http://catalog-proxy:8080/v1/latest`). 5. FreeLLMAPI штатно верифицирует оригинальную цифровую подпись Ed25519 (`PINNED_CATALOG_PUBKEY`) и применяет актуальные модели. ## Запуск в Docker Compose 1. Скопируйте `.env.example` в `.env` и укажите переменные: ```bash cp .env.example .env ``` 2. Запустите стек: ```bash docker compose up -d ``` 3. Проверьте логи синхронизации: ```bash docker compose logs -f freellmapi ```