Canonical variables:
- AUTH_SECRET_KEY — JWT signing key for backend + agent (was split across
AUTH_SECRET_KEY / JWT_SECRET)
- SERVICE_JWT — agent→backend service token
- No JWT_SECRET fallback: decoder fails with migration guidance if only
JWT_SECRET is set
Compose files unified:
- docker-compose.yml, docker-compose.enterprise-clean.yml,
docker-compose.e2e.yml — all use AUTH_SECRET_KEY
- build.sh generated compose now passes AUTH_SECRET_KEY + ENCRYPTION_KEY
to backend
Env examples unified and completed:
- .env.example — comprehensive template, all compose vars
- .env.enterprise-clean.example — production template
- backend/.env.example — backend-only run
- docker/.env.agent.example — agent-only run
- NEW: .env.current.example, .env.master.example,
.env.e2e.example, frontend/.env.example
Tests aligned:
- conftest sets AUTH_SECRET_KEY (canonical value matched across test files)
- test mocks use canonical name
- 1176 passed, 0 failed
38 lines
2.2 KiB
Plaintext
38 lines
2.2 KiB
Plaintext
# Agent container env vars
|
||
# Используется для прямого запуска агента (без docker compose).
|
||
# При использовании docker-compose — переменные задаются в compose/environment.
|
||
# ВАЖНО: AUTH_SECRET_KEY должен совпадать с ключом бекенда.
|
||
|
||
# ── Безопасность (ОБЯЗАТЕЛЬНО) ─────────────────────────────────────────
|
||
# JWT-ключ подписи токенов — единый для backend и agent.
|
||
# Сгенерировать: python3 -c "import secrets; print(secrets.token_urlsafe(32))"
|
||
AUTH_SECRET_KEY=<same-as-backend-AUTH_SECRET_KEY>
|
||
|
||
# Сервисный токен для agent→backend вызовов.
|
||
SERVICE_JWT=agent-service-secret
|
||
|
||
# ── Подключение ────────────────────────────────────────────────────────
|
||
FASTAPI_URL=http://backend:8000
|
||
DATABASE_URL=postgresql+psycopg2://postgres:postgres@db:5432/ss_tools
|
||
|
||
# ── LLM ────────────────────────────────────────────────────────────────
|
||
LLM_API_KEY=
|
||
LLM_BASE_URL=https://api.openai.com/v1
|
||
LLM_MODEL=gpt-4o
|
||
|
||
# ── Gradio ─────────────────────────────────────────────────────────────
|
||
GRADIO_SERVER_NAME=0.0.0.0
|
||
GRADIO_SERVER_PORT=7860
|
||
# GRADIO_ALLOW_PORT_FALLBACK=true
|
||
|
||
# ── Тонкие настройки агента ────────────────────────────────────────────
|
||
# AGENT_ENABLE_LLM_TITLES=true
|
||
# AGENT_TITLE_GENERATION_TIMEOUT_S=0.25
|
||
# AGENT_PREFETCH_DASHBOARD_LIMIT=25
|
||
# AGENT_CONFIRM_TOOLS=false
|
||
# AGENT_INTERRUPT_BEFORE=
|
||
|
||
# ── Embedding routing (только для bundle:embeddings) ────────────────────
|
||
# EMBEDDING_SIMILARITY_THRESHOLD=0.65
|
||
# EMBEDDING_TOP_K=5
|