Гибридный режим¶
В гибридном режиме локальный core подключается к корпоративному серверу: один UI объединяет локальные и удалённые проекты, а LLM-запросы идут через сервер — ключи, модели и аудит остаются на нём.
Зачем это нужно¶
-
Файлы остаются локально
Локальные сессии работают с вашими файлами и движком. Данные не нужно выгружать на сервер, чтобы начать работу.
-
Ключи и аудит — на сервере
Все обращения к моделям идут через корпоративный сервер: ключи провайдеров не покидают его, а каждый запрос попадает в аудит.
-
Один интерфейс на два мира
Локальные и удалённые проекты и сессии видны рядом, с пометкой, где живёт каждый из них.
Как это работает¶
Машина пользователя Корпоративный сервер
┌────────────────────────────┐ HTTPS ┌──────────────────────────┐
│ UI (localhost) │ │ backend (API Hub) │
│ └─ synth-core (:4300) │ ───────────► │ ├─ OIDC + RBAC │
│ ├─ локальный мир │ /api/v2/* │ ├─ LLM Proxy + Gateway │
│ └─ remote-клиент │ ◄─────────── │ ├─ центральные ключи │
└────────────────────────────┘ события │ └─ удалённые сессии │
└──────────────────────────┘
- Локальный core — единая точка входа. Он агрегирует оба мира и маршрутизирует запросы по тому, где живёт сессия или проект.
- Удалённые сессии исполняются сервером, локальные — локально.
- LLM-запросы локальных сессий тоже идут через сервер — в гибридном режиме локальные провайдеры отключаются, работают только централизованные.
- События удалённых сессий транслируются на локальный UI в реальном времени.
Быстрый запуск¶
Из клонированного репозитория удобно запустить готовый скрипт — он собирает пакеты и поднимает локальный core с нужными параметрами подключения:
Ручной запуск¶
Если вы установили Synth из npm, подключение делается флагом --connect:
При необходимости можно явно указать параметры аутентификации — они нужны как запасной вариант, если сервер не отдаёт их сам:
synth serve --connect https://synth.example.com \
--oidc-issuer https://idp.example.com/realms/synth \
--oidc-client-id synth-cli
Для автоматизации доступен вход по токену: добавьте --token <key>. Запуск без
известного адреса — с флагом --no-auto-profile: сервер поднимется нейтрально,
а адрес и учётные данные вводятся в UI.
Старт не блокируется
Локальный core поднимается сразу, без интерактивных шагов в консоли. Если сохранённые учётные данные есть, вход выполняется автоматически; если нет — вы входите в интерфейсе.
Вход¶
Вход в гибридном режиме — обычные логин и пароль: личность и роли приходят с сервера и становятся вашей локальной сессией. Поле «Адрес сервера» доступно всегда, поэтому при необходимости можно сменить сервер или ввести другой адрес.
- Сохранённые профили серверов. UI предзаполняет адрес последнего использованного сервера и предлагает известные варианты.
- Выход отключает текущий сервер и удаляет его учётные данные; список известных серверов при этом сохраняется.
Что централизуется¶
| Область | Где находится в гибриде |
|---|---|
| Ключи провайдеров | Только на сервере |
| Модели | Централизованный список сервера |
| Аудит LLM-запросов | На сервере, для локальных и удалённых сессий |
| Ограничение частоты запросов | На сервере |
| Локальные файлы и workspace | Остаются на вашей машине |
Агрегация локального и удалённого¶
Локальные и удалённые сущности показываются в общем списке и помечаются источником: локально или удалённо. Запросы автоматически уходят в нужный мир, а изменения удалённых объектов подтверждаются в интерфейсе.
Сервер недоступен
Если корпоративный сервер недоступен, локальный мир продолжает работать — удалённые проекты и сессии временно неактивны, а в интерфейсе появляется предупреждение. После восстановления связи подключение возвращается автоматически.
Обмен проектами: publish и fork¶
Проект можно перенести между мирами:
# локальный проект → корпоративный сервер
synth project publish <id> --remote
# удалённый проект → локально
synth project fork <id> --local
Вместе с проектом переносятся его сессии и файлы рабочего каталога.
Что понадобится¶
- Node.js >= 22 (и pnpm при запуске через
./scripts/hybrid.sh). - HTTPS-доступ к корпоративному серверу.
- Учётная запись на сервере или API-токен для автоматизации.
Что дальше¶
- Kubernetes / Helm — как разворачивается сервер.
- Аутентификация и роли — вход и права.
- Сессии и проекты — работа с обоими мирами.
- Конфигурация — параметры инстанса.