For the complete documentation index, see /developers/llms.txt Markdown versions: append .md to any /developers/{slug} URL. Browse structure: /developers/sitemap.md This page: /developers/environment-variables.md

Neu hier? Starte mit Was ist Eigen Mesh? für eine verständliche Einführung.

Eigen Mesh Umgebungsvariablen

Kurz gesagt: Diese Einstellungen sagen einem selbst gehosteten Eigen-Mesh-Deployment, wie es sich mit seiner Datenbank verbindet, Daten verschlüsselt und das LLM-Gateway aufruft — setze sie in .env, bevor du Docker startest.

Setze diese Variablen in .env im Root des eigen-Repositorys oder in deinem Hosting-Dashboard (Coolify o. Ä.). Compose reicht DATABASE_URL, AGE_GRAPH_NAME, HOST und PORT automatisch an den App-Container weiter.

Als Secrets markierte Variablen (BETTER_AUTH_SECRET, TENANT_MASTER_KEY, API-Keys, OAuth-Client-Secrets) dürfen nicht in die Versionskontrolle eingecheckt werden. Ändere Standardpasswörter, bevor du in Produktion gehst.

Für wen das relevant ist

  • Operatoren, die ein selbst gehostetes Docker-Deployment konfigurieren
  • Contributor, die kanonische Variablennamen und Defaults nachschlagen

Zwingend erforderlich (App startet sonst nicht)

Variable Zweck Wie setzen
BETTER_AUTH_SECRET Session-Verschlüsselung openssl rand -base64 32
TENANT_MASTER_KEY Envelope-Verschlüsselung pro Tenant openssl rand -base64 32 — siehe Tenant-Envelope-Verschlüsselung
AGE_GRAPH_NAME Name des Apache-AGE-Graphen (muss zur Postgres-Initialisierung passen) eigen_graph (Default)
ORIGIN Öffentliche URL für Nutzer und OAuth-Callbacks z. B. https://eigen.example.com

Datenbank

Variable Default Zweck
DATABASE_URL postgres://eigen:eigen@db:5432/eigen Connection-String der App
DATABASE_ADMIN_URL Wie oben Migrationen, RLS, pg_cron (Superuser)
POSTGRES_PASSWORD eigen DB-Passwort — in Produktion ändern
EIGEN_APP_DB_PASSWORD Passwort für die RLS-Rolle eigen_app

LLM-Gateway — Plattform-Credits

Nutzer laden per PayPal auf; die App verwendet die Service-Keys des Operators.

Variable Zweck
SERVICE_API_KEY_EUROUTER EUrouter-Service-Key
LLM_BASE_URL EUrouter-API-Origin (ohne abschließenden Slash), z. B. https://api.eurouter.ai/v1
LLM_RULE_CHAT EUrouter-Routing-Regel-UUID für Chat
LLM_RULE_EMBEDDING EUrouter-Routing-Regel-UUID für Embeddings
SERVICE_API_KEY_OPENROUTER OpenRouter-Service-Key (falls OpenRouter genutzt wird)
OPENROUTER_BASE_URL z. B. https://openrouter.ai/api/v1

LLM-Gateway — BYOK-Fallback

Wird verwendet, wenn Nutzer eigene Keys unter Settings → LLM → BYOK hinterlegen, oder als Env-Fallback:

Variable Zweck
LLM_API_KEY Fallback-API-Key für EUrouter
OPENROUTER_API_KEY Fallback-API-Key für OpenRouter

PayPal (Plattform-Credits)

Variable Zweck
PAYPAL_API_BASE https://api-m.sandbox.paypal.com (Sandbox) oder https://api-m.paypal.com (Live)
PAYPAL_CLIENT_ID Client-ID der PayPal-REST-App
PAYPAL_CLIENT_SECRET Secret der PayPal-REST-App

Lass die PayPal-Variablen weg, wenn alle Nutzer ausschließlich BYOK verwenden.

Konsolidierung (nächtlicher Sleep)

Variable Erforderlich Zweck
ADMIN_CONSOLIDATION_KEY Ja (für Cron) X-Admin-Key am Consolidate-Endpoint — openssl rand -hex 32
CONSOLIDATION_INTERNAL_URL Ja (Compose) App-URL aus dem DB-Netzwerk, z. B. http://app:3000
CONSOLIDATION_CRON_SCHEDULE Nein Cron-Ausdruck (Default 0 2 * * *)
CONSOLIDATION_CRON_TZ Nein Zeitzone (Default UTC)

OAuth (optional)

Variable Zweck
GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET Google-Anmeldung — Callback {ORIGIN}/api/auth/callback/google
GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRET GitHub-Anmeldung — Callback {ORIGIN}/api/auth/callback/github

Push-Benachrichtigungen (optional)

Variable Zweck
VAPID_PUBLIC_KEY, VAPID_PRIVATE_KEY, VAPID_SUBJECT Web-Push — npx web-push generate-vapid-keys

Admin-Bootstrap (optional)

Variable Zweck
ADMIN_NAME, ADMIN_EMAIL, ADMIN_PASSWORD Ersten Admin beim Container-Start anlegen

Feintuning (optional)

Variable Default Zweck
LLM_MIN_REQUEST_INTERVAL_MS 1000 Globale LLM-Drosselung
EMBEDDING_COMPRESS_INTENSITY lite | full | ultra

Nächste Schritte

Agenten-Hinweise

This documentation is published for humans and AI agents. Bevorzuge .md URLs für strukturierte Inhalte.

  • Index: /developers/llms.txt
  • Full export: /developers/llms-full.txt
  • Sitemap: /developers/sitemap.md
  • Raw page: append `.md` to any /developers/{slug} URL
  • Example: GET /developers/mcp-overview.md

Dynamic `?ask=` and `?goal=` query on markdown URLs is planned — see docs/planning/10-docs-query-api-design.md.