Skip to content
2.12.0

Сервисы платформы ​

Из каких процессов состоит EVA, за что отвечает каждый, как они общаются между собой и где хранят данные. Для разработчиков и тех, кто сопровождает платформу.

EVA делится на плоскость управления и плоскость выполнения. API хранит конфигурацию и состояние и решает, кому что можно. Runtime и Package-pool выполняют работу: ходы чата, вызовы моделей, инструменты и код пакетов.

API ​

Пограничный сервис и плоскость управления. Всё, что приходит снаружи, проходит через него.

  • Вход: локальный и через LDAP, сессии, API-ключи, права по ролям.
  • Хранение: пользователи, роли, группы, провайдеры, модели, MCP, правила, сценарии, ассистенты, агенты, пакеты, настройки, журнал расхода.
  • Чат: создание ходов, проксирование потока событий от Runtime в браузер по SSE, файлы чатов.
  • Пакеты: реестр, черновики и версии, установка зависимостей через собственный npm-реестр @eva/*, прокси виджетов на /internal/bg-service/<пакет>/.
  • Агенты: запуски, вебхуки, расписания. Планировщик работает внутри API.
  • Внешние интерфейсы: OpenAI-совместимый /v1, MCP-шлюз /mcp, документация OpenAPI на /api/docs.
  • Раздача собранного веб-интерфейса в продакшене.

Runtime ​

Плоскость выполнения ходов чата и запусков агентов.

  • Принимает запуск от API, берёт слот ёмкости, ставит в очередь, если слотов нет.
  • Форкает воркеры и закрепляет за ними чаты. Воркер держит соединения с MCP этого чата.
  • Выполняет цикл модели: запрос, вызовы инструментов, повтор до ответа.
  • Встроенные инструменты: файлы пространства, правила, формы, дата и время, download_url, upload_url, clear_context.
  • Отдаёт канонические события: начало и конец запуска, текст, рассуждения, вызовы инструментов, расход токенов, артефакты.

Package-pool ​

Отдельный процесс для кода пакетов.

  • Вызывает навыки пакетов по запросу Runtime.
  • Держит долгоживущие процессы фоновых сервисов и проксирует к ним HTTP виджетов.
  • Режим запуска кода задаётся EVA_PACKAGE_ISOLATE: по умолчанию host, строгая изоляция secure-exec включается явно.

Подробнее: Пакеты и рантайм.

Хранилища ​

ХранилищеЧто там
PostgreSQLВся конфигурация и состояние: пользователи, чаты, сообщения, запуски, реестры, журнал расхода, ёмкость
Том apps/api/.dataФайлы чатов и пространств, хранилище пакетов, черновики, рабочие папки пакетов, артефакты агентов, логи фоновых сервисов

Одного тома на /app/apps/api/.data достаточно для всех файлов платформы.

Проверка живости ​

У каждого процесса есть GET /healthz. Сводная картина, включая воркеры и очередь, видна в Админ → Рантайм.

Документация экосистемы EVA 2.1