Environment Variables ====================== All configuration is managed through environment variables. In Docker deployments, these are set in the ``.env`` file. Required Variables ------------------- .. list-table:: :header-rows: 1 * - Variable - Description - Example * - ``ENV`` - Deployment environment - ``development`` / ``staging`` / ``production`` * - ``BACKEND_PORT`` - Host port for backend service - ``8000`` * - ``POSTGRES_USER`` - PostgreSQL username - ``codesign`` * - ``POSTGRES_PASSWORD`` - PostgreSQL password - ``secret`` * - ``POSTGRES_DB`` - PostgreSQL database name - ``codesign`` * - ``POSTGRES_HOST`` - PostgreSQL hostname - ``postgres`` * - ``LITELLM_MASTER_KEY`` - LiteLLM authentication key - ``sk-litellm-xxx`` * - ``OVH_ENDPOINT_API_KEY_1`` - OVH LLM API key (at least one) - ``ovh-xxx`` Optional Variables ------------------- .. list-table:: :header-rows: 1 * - Variable - Description - Default * - ``ROOT_PATH`` - API path prefix (behind proxy) - ``""`` (empty) * - ``RESET_DB_ON_STARTUP`` - Drop and recreate DB on start - ``false`` * - ``DEBUG`` - Enable debug logging - ``false`` * - ``DATABASE`` - Full database URL override - Built from POSTGRES_* vars * - ``ORCHESTRATOR_MODE`` - AI orchestrator version - ``""`` (general) / ``v3`` (coach) Vector Database ~~~~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 * - Variable - Description - Default * - ``WEAVIATE_HOST`` - Weaviate hostname - ``codesign-weaviate`` * - ``WEAVIATE_PORT`` - Weaviate REST port - ``8080`` * - ``WEAVIATE_GRPC_PORT`` - Weaviate gRPC port - ``50051`` * - ``VECTOR_DB_NAME`` - Weaviate collection name - — LLM Gateway ~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 * - Variable - Description - Default * - ``LLM_BASE_URL`` - LiteLLM base URL - ``http://litellm:4000`` * - ``LLM_LITE_PORT`` - LiteLLM host port - ``4000`` * - ``LLM_LITE_USER`` - LiteLLM UI username - — * - ``LLM_LITE_PASSWORD`` - LiteLLM UI password - — * - ``OVH_ENDPOINT_API_KEY_1..6`` - OVH API keys (load balanced) - — Search & Crawling ~~~~~~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 * - Variable - Description - Default * - ``SEARXNG_URL`` - SearXNG search engine URL - — * - ``CRAWL4AI_URL`` - Crawl4AI content extractor - — Data Paths ~~~~~~~~~~~ .. list-table:: :header-rows: 1 * - Variable - Description - Default * - ``DATA_BENCHMARK`` - Benchmark data directory - — * - ``DATA_EMBEDDING`` - Embedding model cache - — * - ``RERANKER_EMBEDDING`` - Reranker model path - — * - ``VECTOR_DB_DIR`` - Local vector DB directory - — * - ``FEEDBACKS_DIR`` - Feedback storage path - — Neo4j (Optional) ~~~~~~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 * - Variable - Description - Default * - ``NEO4J_HTTP_PORT`` - Neo4j browser port - ``7474`` * - ``NEO4J_BOLT_PORT`` - Neo4j Bolt protocol port - ``7687``