Skip to main content

Environment Variables

Nenyax is envless by default — no .env files are needed for local development. All infrastructure defaults are hardcoded in the code to match the docker-compose port mappings. Provider API keys (LiveKit, Google, Resemble, Twilio, STT) are managed through the API Keys dashboard page, encrypted in the database.

When are .env files needed?

Only create a .env file if you need to override a default.

Local Dev Defaults

These are hardcoded in config.py, auth.ts, and api.ts:

Root .env (Docker Compose)

Only used when running via docker compose up. The compose files have defaults, so this is optional for dev:

Backend (backend/.env)

Not needed for local dev. All defaults are in config.py. Only create to override: Provider keys set in .env are used as fallback — the dashboard takes priority.

Frontend (frontend/.env)

Not needed for local dev. All defaults are in auth.ts and api.ts. Only create to override:

Agent

No .env file needed. On startup, it calls the backend’s /api/settings/keys/agent endpoint and injects all keys into the process environment.

Dashboard-Managed Keys

These keys are configured at API Keys in the dashboard. They are encrypted with AES-256-GCM and stored in the database.

Auto-Provisioned (No Config Needed)

These were previously environment variables but are now fully automated:

Custom Agent Infrastructure

These variables are only needed if you override the defaults for custom Python agents:

Telemetry

Nenyax collects anonymous usage telemetry (page views, feature usage) via PostHog to help improve the product. No personal data or conversation content is collected. Set NEXT_PUBLIC_TELEMETRY=false to opt out.