Umgebungsvariablen
Die gesamte Selu-Konfiguration erfolgt über Umgebungsvariablen, die typischerweise in deiner .env-Datei neben docker-compose.yml gesetzt werden.
Erforderlich
Abschnitt betitelt „Erforderlich“Nur eine Variable ist zum Start von Selu erforderlich:
| Variable | Beschreibung |
|---|---|
SELU__ENCRYPTION_KEY | Verschlüsselungsschlüssel für gespeicherte Zugangsdaten. Verwende eine zufällige Zeichenkette mit mindestens 32 Zeichen. |
| Variable | Beschreibung | Standard |
|---|---|---|
SELU__SERVER__PORT | Port, auf dem das Selu-Dashboard hört | 3000 |
SELU__SERVER__HOST | IP-Adresse zum Binden | 0.0.0.0 |
SELU__EXTERNAL_URL | Öffentliche URL deiner Instanz (für Webhooks hinter einem Reverse Proxy) | — |
SELU__BASE_PATH | URL-Pfad-Präfix bei Betrieb hinter einem Reverse Proxy auf einem Sub-Pfad (z.B. /selu) | — |
Datenbank
Abschnitt betitelt „Datenbank“Selu verwendet eine eingebettete SQLite-Datenbank. Standardmäßig wird sie im Container unter /app/data/selu.db gespeichert.
| Variable | Beschreibung | Standard |
|---|---|---|
SELU__DATABASE__URL | SQLite-Verbindungszeichenkette | sqlite:///app/data/selu.db?mode=rwc |
System-Updates
Abschnitt betitelt „System-Updates“Das eingebaute Update-System wird mit diesen Variablen konfiguriert:
| Variable | Beschreibung | Standard |
|---|---|---|
SELU_RELEASE_CHANNEL | Release-Kanal: stable, dev oder nightly | stable |
SELU__RELEASE_METADATA_URL | URL für Release-Metadaten-API | https://selu.bot/api/releases/selu |
Das Update-System schreibt diese Variablen automatisch in deine .env-Datei — du musst sie nicht selbst setzen:
| Variable | Beschreibung |
|---|---|
SELU_IMAGE_TAG | Aktueller Docker-Image-Tag |
SELU_IMAGE_DIGEST | Image-Digest zur Verifizierung |
SELU_IMAGE_VERSION | Release-Version (z.B. v1.5.0) |
SELU_IMAGE_BUILD | Build-Nummer |
Updater-Sidecar (erweitert)
Abschnitt betitelt „Updater-Sidecar (erweitert)“Der Update-Sidecar läuft neben Selu und verwaltet den eigentlichen Update-Prozess. Diese Variablen werden vom Installer vorkonfiguriert — du musst sie normalerweise nicht ändern.
| Variable | Beschreibung | Standard |
|---|---|---|
SELU_UPDATER_URL | URL des Updater-Sidecars | http://selu-updater:8090 |
SELU_UPDATER_SHARED_SECRET | Geteiltes Geheimnis zur Authentifizierung mit dem Sidecar | — |
SELU_UPDATER_REQUEST_TIMEOUT_SECS | Timeout für Anfragen an den Sidecar (Sekunden) | 30 |
Marketplace und Agenten
Abschnitt betitelt „Marketplace und Agenten“| Variable | Beschreibung | Standard |
|---|---|---|
SELU__MARKETPLACE_URL | Agent-Marketplace-API-URL | https://selu.bot/api/marketplace/agents |
SELU__INSTALLED_AGENTS_DIR | Verzeichnis für installierte Marketplace-Agenten | /app/installed_agents |
LLM-Anbieter und Kanäle
Abschnitt betitelt „LLM-Anbieter und Kanäle“Zugangsdaten für LLM-Anbieter (Anthropic, OpenAI, Bedrock) und Kanäle (Telegram, iMessage) werden über das Selu-Dashboard verwaltet — nicht über Umgebungsvariablen. Gehe zu Einstellungen → Anbieter, um API-Schlüssel hinzuzufügen, oder zu Pipes, um Messaging-Kanäle einzurichten.
Erweitert
Abschnitt betitelt „Erweitert“| Variable | Beschreibung | Standard |
|---|---|---|
SELU__EGRESS_PROXY_ADDR | Egress-Proxy-Adresse für Agent-Container | 0.0.0.0:8888 |
SELU__MAX_CHAIN_DEPTH | Maximale Ereigniskettentiefe (verhindert Schleifen) | 3 |
Beispiel-.env-Datei
Abschnitt betitelt „Beispiel-.env-Datei“SELU__ENCRYPTION_KEY=a1b2c3d4e5f6...
# Release-KanalSELU_RELEASE_CHANNEL=stable
# Bei Betrieb hinter einem Reverse Proxy# SELU__EXTERNAL_URL=https://selu.example.comDu kannst Variablen auch direkt in docker-compose.yml unter dem environment-Schlüssel setzen, aber die .env-Datei ist für die meisten Setups einfacher.
Variablenbenennung
Abschnitt betitelt „Variablenbenennung“Selu verwendet einen doppelten Unterstrich (__) als Trennzeichen für verschachtelte Konfiguration. Zum Beispiel:
SELU__SERVER__PORT→ Server-PortSELU__EXTERNAL_URL→ Externe URL
Einige Variablen des Update-Systems (SELU_RELEASE_CHANNEL, SELU_IMAGE_TAG, usw.) verwenden einfache Unterstriche, da sie direkt gelesen werden und nicht über die Konfigurationsbibliothek.
Release-Kanäle
Abschnitt betitelt „Release-Kanäle“| Kanal | Update-Frequenz | Am besten für |
|---|---|---|
| Stable | Alle paar Wochen | Produktionsnutzung (empfohlen) |
| Dev | Wöchentlich | Früher Zugang zu neuen Funktionen |
| Nightly | Täglich | Tests (kann instabil sein) |
Du kannst Kanäle auch im Dashboard unter System Updates wechseln.