Skip to content

Переменные окружения ​

Бэкенд настраивается через единственный файл .env. В автоматической установке он находится в /root/copula/.env (права 0600); при ручной установке это .env, который вы создаёте по готовому шаблону со страницы Ручная установка.

Основные ​

ПеременнаяПо умолчаниюОписание
BACKEND_PORT8080Порт, который бэкенд слушает внутри контейнера. Compose-стеки публикуют на него порт хоста 8901.
LOG_LEVEL—Детализация логирования.
CORS_ALLOWED_ORIGINS*Разрешённые CORS-источники.
JWT_SECRET—Обязательная. Секрет подписи JWT; ровно 128 hex-символов.
ENCRYPTION_KEY—Обязательная. Ключ шифрования AES-256; 32 символа.
LICENSE_TOKEN—Обязательная. Лицензионный токен из кабинета; также bearer-токен для LLM-роутера кабинета.
CABINET_URLhttps://api.copul4.comEndpoint API кабинета.
ADMIN_USER / ADMIN_PASS—Начальные учётные данные администратора; бэкенд автоматически создаёт из них аккаунт администратора.

База данных ​

ПеременнаяПо умолчаниюОписание
POSTGRES_HOSTpostgresХост PostgreSQL.
POSTGRES_PORT5432Порт PostgreSQL.
POSTGRES_USERagentПользователь базы данных.
POSTGRES_PASSWORD(пусто)Пароль базы данных.
POSTGRES_DBagentdbИмя базы данных.

Провайдер моделей ​

ПеременнаяПо умолчаниюОписание
MODEL_PROVIDERopenrouteropenrouter, custom или copula. Пустое значение означает openrouter; неизвестное значение логирует fatal-сообщение и откатывается к openrouter.
MODEL_BASE_URLhttps://openrouter.ai/api/v1Базовый URL OpenAI-совместимого API.
MODEL_API_KEY—API-ключ провайдера (для copula не нужен — учётные данные это лицензионный токен).
MODEL_NAME—Имя модели. В новых установках через мастер по умолчанию copula-base.
MODEL_MAX_TOKENS25000Максимум токенов в ответе модели.

Профили Smart / Basic ​

SMART_MODEL_* и BASIC_MODEL_* переопределяют значения MODEL_* для каждого профиля. Разрешение каждого значения идёт по цепочке fallback SMART_* → BASIC_* → MODEL_*.

Группа переменныхНазначение
SMART_MODEL_PROVIDER / SMART_MODEL_BASE_URL / SMART_MODEL_API_KEY / SMART_MODEL_NAME / SMART_MODEL_MAX_TOKENSПереопределения для smart-профиля (тяжёлый).
BASIC_MODEL_PROVIDER / BASIC_MODEL_BASE_URL / BASIC_MODEL_API_KEY / BASIC_MODEL_NAME / BASIC_MODEL_MAX_TOKENSПереопределения для basic-профиля (лёгкий).

Также распознаются устаревшие ключи провайдеров OPENROUTER_API_KEY и MINIMAX_API_KEY.

Пресет моделей Copula ​

MODEL_PRESET определяет, какие встроенные агенты наследуют smart-профиль, а какие — basic-профиль, когда бэкенд заполняет настройки агентов. Мастер установки записывает эту переменную из пресета, выбранного на шаге Env.

ПеременнаяПо умолчаниюОписание
MODEL_PRESETbalancedeconomy, balanced или performance. Пустое или неизвестное значение откатывается к balanced с предупреждением в логе.
ПресетSmart-профильBasic-профиль
economy—product, rnd, developer, qa, devops, e2e, chronicler
balancedproduct, rnd, devopsdeveloper, qa, chronicler, e2e
performanceproduct, rnd, developer, qa, devops, e2e, chronicler—

Пресет применяется один раз, при первом запуске: заполнение затрагивает только отсутствующие настройки агентов, поэтому последующее изменение MODEL_PRESET не влияет на существующие настройки агентов — меняйте профили вручную в настройках агентов.

Профиль smart-fast ​

SMART_FAST_MODEL_* — дополняющий третий бандл профиля, следующий тому же паттерну именования, что SMART_MODEL_* / BASIC_MODEL_*. Каждое значение разрешается по цепочке fallback SMART_FAST_* → SMART_* → BASIC_* → MODEL_*.

Группа переменныхНазначение
SMART_FAST_MODEL_PROVIDER / SMART_FAST_MODEL_BASE_URL / SMART_FAST_MODEL_API_KEY / SMART_FAST_MODEL_NAME / SMART_FAST_MODEL_MAX_TOKENSПереопределения для профиля smart-fast.
SMART_FAST_MODEL_CONTEXT_LIMITПереопределение лимита контекста профиля smart-fast; откатывается к AGENT_CONTEXT_TOKEN_LIMIT, затем к 450000.

Если разрешённый провайдер профиля smart-fast — copula и ни одна из SMART_FAST_MODEL_NAME, SMART_MODEL_NAME, BASIC_MODEL_NAME явно не задана, имя модели по умолчанию — copula-smart-fast.

Профиль smart-fast сидится только если отсутствует, под тем же общим гейтом, что профили smart/basic. На существующих инстансах профиль появляется аддитивно при следующем запуске; инстансы без новых переменных не меняют поведение (профиль копирует значения, разрешённые по цепочке fallback).

Существующие имена MODEL_*, SMART_MODEL_* и BASIC_MODEL_* не изменены и остаются полностью поддерживаемыми — они не deprecated. MODEL_PRESET и карты наследования пресетов выше также не изменены: smart-fast не входит ни в один пресет.

copula-smart-fast требует тариф PRO — см. Получение лицензии.

Агенты и рантайм ​

ПеременнаяПо умолчаниюОписание
AGENT_WORKSPACE—Путь к рабочей директории репозиториев агентов.
AGENT_CONTEXT_TOKEN_LIMIT120000Лимит токенов контекста агента.
MAX_REPO_WORKERS20Максимум одновременных воркеров репозиториев.
SESSION_STORAGE_TYPE—database или file.
SESSION_FILE_PATH—Путь для файлового хранилища сессий.
FILE_STORAGE_PATH./uploadsКуда сохраняются загруженные файлы.
MAX_FILE_SIZE_MB50Максимальный размер загрузки.

Интеграции и обновления ​

ПеременнаяПо умолчаниюОписание
SP_DISTRIBUTOR_URLhttps://get.copul4.comEndpoint дистрибьютора.
SELF_UPDATE_IMAGE—Опциональное переопределение ссылки на образ, используемой при проверках доступности self-update.
COCOINDEX_CODE_IMAGEcocoindex/cocoindex-code:fullПереопределение образа поиска по коду (уровень compose).

LLM-роутер кабинета (для операторов) ​

LLM-роутер кабинета (endpoint провайдера copula за CABINET_URL) — централизованно управляемая установка. Его конфигурация роль-ориентирована, чтобы апстрим-провайдера можно было заменить без переименования конфигурации:

ПеременнаяПо умолчаниюОписание
PROVIDER_BASE_API_KEY(пусто)API-ключ base-апстрима; также ключ search-эндпоинта.
PROVIDER_BASE_BASE_URLhttps://api.minimax.io/v1Базовый URL base-апстрима.
PROVIDER_BASE_MODELMiniMax-M3Переопределение апстрим-модели для copula-base.
PROVIDER_SMART_API_KEY(пусто)API-ключ smart-апстрима.
PROVIDER_SMART_BASE_URL(пусто)Базовый URL smart-апстрима; пока пуст, copula-smart / copula-smart-long отвечают 502.
PROVIDER_SMART_MODELkimi-k3Переопределение апстрим-модели для copula-smart.
PROVIDER_SMART_MODEL_LONGkimi-k3-1mПереопределение апстрим-модели для copula-smart-long.
PROVIDER_SMART_PROXY_URL(пусто)Опциональный прокси для smart-апстрима; fail-fast валидация при запуске.
PROVIDER_SMART_FAST_API_KEY(пусто)API-ключ smart-fast-апстрима.
PROVIDER_SMART_FAST_BASE_URL(пусто)Базовый URL smart-fast-апстрима; пока пуст, copula-smart-fast отвечает 502.
PROVIDER_SMART_FAST_MODELkimi-k3Переопределение апстрим-модели для copula-smart-fast (placeholder-дефолт).
PROVIDER_SMART_FAST_PROXY_URL(пусто)Опциональный прокси для smart-fast-апстрима; та же fail-fast валидация.

Старые имена роутера кабинета MINIMAX_* / MODAL_* удалены без слоя совместимости — кабинет является централизованной установкой, и оператор обновляет env при деплое. Замена касается только роутера кабинета; имена env бэкенда выше не изменены.

Переопределения апстрим-моделей ключуются wire-кодом модели. Wire-модели: copula-base (множитель ×1), copula-smart (×10), copula-smart-long (×20) и copula-smart-fast (×20, только тариф PRO). У copula-smart-fast нет context-fallback и страховочного ретрая.