Overview
This reference lists every environment variable used across the 14 Anar products, organized by category. Variables with defaults can be omitted in development; those marked required must be set for the product to function.
AI Provider Keys
These credentials are shared across products and typically set once in the monorepo .env file.
| Variable | Default | Description |
|---|---|---|
GROQ_API_KEY | (none) | Groq API key for fast inference |
AZURE_OPENAI_API_KEY | (none) | Azure OpenAI API key |
AZURE_OPENAI_ENDPOINT | https://aimodels-uaenorth.cognitiveservices.azure.com | Azure OpenAI endpoint URL |
AZURE_OPENAI_DEPLOYMENT | gpt-4o-uaenorth | Azure chat deployment name |
AZURE_EMBEDDING_DEPLOYMENT | text-embedding-3-large-uaenorth | Azure embedding deployment name |
AZURE_API_VERSION | 2024-05-01-preview | Azure API version |
CORE42_API_KEY | (none) | Sovereign cloud API key |
LLM_PROVIDER | groq | Default LLM provider (groq, azure, core42) |
Gateway
| Variable | Default | Description |
|---|---|---|
GATEWAY_URL | (empty) | Gateway endpoint for product routing (e.g., http://gateway:8080/v1) |
GATEWAY_API_KEY | (empty) | API key for Gateway authentication |
APP_PORT | 8080 | Gateway listen port |
APP_HOST | 0.0.0.0 | Gateway bind address |
LOG_LEVEL | info | Log level (debug, info, warn, error) |
JWT Secrets
Each product has its own JWT secret environment variable. Products with env_prefix in their config require the prefixed form.
| Variable | Product | Default |
|---|---|---|
CHAT_JWT_SECRET or JWT_SECRET | Chat | anar-chat-dev-secret-k8s7m2x |
GUARD_JWT_SECRET or JWT_SECRET | Guard | anar-guard-dev-secret-p4n9q6v |
VOICE_JWT_SECRET or JWT_SECRET | Voice | anar-voice-dev-secret-r3t8w5m |
AGENTS_JWT_SECRET | Agents | anar-agents-dev-secret-h7j2n4x |
COMPLY_JWT_SECRET | Comply | anar-comply-dev-secret-v6b9d1f |
EVAL_JWT_SECRET or JWT_SECRET | Eval | anar-eval-dev-secret-c5g8k2p |
DOCS_JWT_SECRET or JWT_SECRET | Docs | anar-docs-dev-secret-m4t7y9w |
FLOW_JWT_SECRET | Flow | anar-flow-dev-secret-a3e6j8s |
INSIGHTS_JWT_SECRET or JWT_SECRET | Insights | anar-insights-dev-secret-q2u5x7z |
TRANSLATE_JWT_SECRET | Translate | anar-translate-dev-secret-r4t6y8u |
MINUTES_JWT_SECRET | Minutes | anar-minutes-dev-secret-p3s5v7w |
PROCURE_JWT_SECRET | Procure | anar-procure-dev-secret-k5m8n2q |
Security
The defaults listed above are for development only. Always generate unique secrets for production with openssl rand -hex 32.
Database
| Variable | Product | Default |
|---|---|---|
DATABASE_URL | Chat | postgresql+asyncpg://anar:anar_chat_2024@chat-db:5432/anar_chat |
DATABASE_URL | Guard | postgresql+asyncpg://anar:anar_guard_2024@guard-db:5432/anar_guard |
DATABASE_URL | Voice | postgresql+asyncpg://anar:anar_voice_2024@voice-db:5432/anar_voice |
CHAT_DB_PASSWORD | Chat DB | anar_chat_2024 |
GUARD_DB_PASSWORD | Guard DB | anar_guard_2024 |
VOICE_DB_PASSWORD | Voice DB | anar_voice_2024 |
Chat-Specific
| Variable | Default | Description |
|---|---|---|
GROQ_CHAT_MODEL | llama-3.3-70b-versatile | Default chat model on Groq |
EMBEDDING_MODEL | text-embedding-3-large | Embedding model name |
CHROMA_HOST | chromadb | ChromaDB host for vector storage |
CHROMA_PORT | 8000 | ChromaDB port |
Guard-Specific
| Variable | Default | Description |
|---|---|---|
LANGFUSE_HOST | http://langfuse:3000 | Langfuse observability endpoint |
LANGFUSE_PUBLIC_KEY | pk-anar-dev | Langfuse public key |
LANGFUSE_SECRET_KEY | sk-anar-dev | Langfuse secret key |
GROQ_GUARD_MODEL | meta-llama/llama-guard-4-12b | Model for safety scanning |
Voice-Specific
| Variable | Default | Description |
|---|---|---|
DEBUG | false | Enable debug mode |
Agents-Specific
| Variable | Default | Description |
|---|---|---|
AGENTS_GROQ_API_KEY | (from GROQ_API_KEY) | Groq key (prefixed) |
AGENTS_GROQ_BASE_URL | https://api.groq.com/openai/v1 | Groq base URL |
AGENTS_DEFAULT_MODEL | llama-3.3-70b-versatile | Default model |
Comply-Specific
| Variable | Default | Description |
|---|---|---|
COMPLY_FRAMEWORKS_DIR | /app/frameworks | Path to compliance framework definitions |
COMPLY_CORS_ORIGINS | ["http://localhost:3005"] | CORS allowed origins |
Eval-Specific
| Variable | Default | Description |
|---|---|---|
GROQ_BASE_URL | https://api.groq.com/openai/v1 | Groq API base URL |
AZURE_API_KEY | (from AZURE_OPENAI_API_KEY) | Azure key for eval |
AZURE_ENDPOINT | (from AZURE_OPENAI_ENDPOINT) | Azure endpoint |
AZURE_DEPLOYMENT | gpt-4o-uaenorth | Azure deployment |
BENCHMARKS_DIR | /app/benchmarks | Path to benchmark definitions |
Docs-Specific
| Variable | Default | Description |
|---|---|---|
OCR_PROVIDER | local | OCR provider (local, azure) |
OCR_LANGUAGES | ar,en | Comma-separated OCR language codes |
MAX_FILE_SIZE_MB | 50 | Maximum upload file size in MB |
CHAT_URL | http://chat-backend:8001 | Chat service URL for RAG ingest |
AUTO_PUSH_TO_RAG | false | Auto-push processed documents to Chat RAG |
Flow-Specific
| Variable | Default | Description |
|---|---|---|
FLOW_GROQ_API_KEY | (from GROQ_API_KEY) | Groq key (prefixed) |
FLOW_GROQ_BASE_URL | https://api.groq.com/openai/v1 | Groq base URL |
FLOW_DEFAULT_MODEL | llama-3.3-70b-versatile | Default model |
FLOW_MAX_WORKFLOW_STEPS | 50 | Maximum steps per workflow |
FLOW_CHAT_URL | http://chat-backend:8001 | Chat service URL |
FLOW_GUARD_URL | http://guard-backend:8002 | Guard service URL |
FLOW_VOICE_URL | http://voice-backend:8003 | Voice service URL |
FLOW_DOCS_URL | http://docs-backend:8000 | Docs service URL |
FLOW_PRESENT_URL | http://present-backend:8000 | Present service URL |
Insights-Specific
| Variable | Default | Description |
|---|---|---|
MAX_QUERY_ROWS | 10000 | Maximum rows returned by analytics queries |
Present-Specific
| Variable | Default | Description |
|---|---|---|
PRESENT_GROQ_API_KEY | (from GROQ_API_KEY) | Groq key (prefixed) |
PRESENT_GROQ_BASE_URL | https://api.groq.com/openai/v1 | Groq base URL |
PRESENT_AZURE_OPENAI_API_KEY | (from AZURE_OPENAI_API_KEY) | Azure key |
PRESENT_AZURE_OPENAI_ENDPOINT | (from AZURE_OPENAI_ENDPOINT) | Azure endpoint |
PRESENT_LLM_PROVIDER | groq | LLM provider |
Translate-Specific
| Variable | Default | Description |
|---|---|---|
TRANSLATE_GROQ_API_KEY | (from GROQ_API_KEY) | Groq key (prefixed) |
TRANSLATE_GROQ_BASE_URL | https://api.groq.com/openai/v1 | Groq base URL |
TRANSLATE_AZURE_OPENAI_API_KEY | (from AZURE_OPENAI_API_KEY) | Azure key |
TRANSLATE_AZURE_OPENAI_ENDPOINT | (from AZURE_OPENAI_ENDPOINT) | Azure endpoint |
TRANSLATE_LLM_PROVIDER | groq | LLM provider |
Minutes-Specific
| Variable | Default | Description |
|---|---|---|
MINUTES_GROQ_API_KEY | (from GROQ_API_KEY) | Groq key (prefixed) |
MINUTES_GROQ_BASE_URL | https://api.groq.com/openai/v1 | Groq base URL |
MINUTES_AZURE_OPENAI_API_KEY | (from AZURE_OPENAI_API_KEY) | Azure key |
MINUTES_AZURE_OPENAI_ENDPOINT | (from AZURE_OPENAI_ENDPOINT) | Azure endpoint |
MINUTES_LLM_PROVIDER | groq | LLM provider |
Procure-Specific
| Variable | Default | Description |
|---|---|---|
PROCURE_GROQ_API_KEY | (from GROQ_API_KEY) | Groq key (prefixed) |
PROCURE_GROQ_BASE_URL | https://api.groq.com/openai/v1 | Groq base URL |
PROCURE_AZURE_OPENAI_API_KEY | (from AZURE_OPENAI_API_KEY) | Azure key |
PROCURE_AZURE_OPENAI_ENDPOINT | (from AZURE_OPENAI_ENDPOINT) | Azure endpoint |
PROCURE_LLM_PROVIDER | groq | LLM provider |
OpenTelemetry
| Variable | Default | Description |
|---|---|---|
OTEL_EXPORTER_OTLP_ENDPOINT | (none) | OTel Collector endpoint. OTel is disabled when unset. |
OTEL_SERVICE_NAME | set in code | Service name for telemetry |
OTEL_ENVIRONMENT | dev | Deployment environment label |
Langfuse (Infra Profile)
| Variable | Default | Description |
|---|---|---|
LANGFUSE_URL | http://localhost:3010 | Langfuse public URL |
LANGFUSE_NEXTAUTH_SECRET | anar-guard-langfuse-secret-change-in-prod | NextAuth secret |
LANGFUSE_SALT | anar-guard-salt-change-in-prod | Encryption salt |
LANGFUSE_ENCRYPTION_KEY | (64 zeros) | AES encryption key |
LANGFUSE_ADMIN_PASSWORD | AnarAdmin2024! | Initial admin password |
LANGFUSE_DB_PASSWORD | anar_labs_2024 | Langfuse database password |
Grafana (Infra Profile)
| Variable | Default | Description |
|---|---|---|
GRAFANA_ADMIN_PASSWORD | admin | Grafana admin password |
Dashboard Environment Variables
Frontend dashboards use client-side environment variables:
| Variable | Product | Description |
|---|---|---|
NEXT_PUBLIC_API_URL | Chat, Guard, Voice, Agents, Comply, Eval, Docs, Flow, Insights | Backend API URL |
VITE_API_URL | Present, Translate, Minutes, Procure | Backend API URL (Vite) |