Zum Inhalt springen

Umgebungsvariablen

Die gesamte Selu-Konfiguration erfolgt über Umgebungsvariablen, die typischerweise in deiner .env-Datei neben docker-compose.yml gesetzt werden.

Nur eine Variable ist zum Start von Selu erforderlich:

VariableBeschreibung
SELU__ENCRYPTION_KEYVerschlüsselungsschlüssel für gespeicherte Zugangsdaten. Verwende eine zufällige Zeichenkette mit mindestens 32 Zeichen.
VariableBeschreibungStandard
SELU__SERVER__PORTPort, auf dem das Selu-Dashboard hört3000
SELU__SERVER__HOSTIP-Adresse zum Binden0.0.0.0
SELU__EXTERNAL_URLÖffentliche URL deiner Instanz (für Webhooks hinter einem Reverse Proxy)
SELU__BASE_PATHURL-Pfad-Präfix bei Betrieb hinter einem Reverse Proxy auf einem Sub-Pfad (z.B. /selu)

Selu verwendet eine eingebettete SQLite-Datenbank. Standardmäßig wird sie im Container unter /app/data/selu.db gespeichert.

VariableBeschreibungStandard
SELU__DATABASE__URLSQLite-Verbindungszeichenkettesqlite:///app/data/selu.db?mode=rwc

Das eingebaute Update-System wird mit diesen Variablen konfiguriert:

VariableBeschreibungStandard
SELU_RELEASE_CHANNELRelease-Kanal: stable, dev oder nightlystable
SELU__RELEASE_METADATA_URLURL für Release-Metadaten-APIhttps://selu.bot/api/releases/selu

Das Update-System schreibt diese Variablen automatisch in deine .env-Datei — du musst sie nicht selbst setzen:

VariableBeschreibung
SELU_IMAGE_TAGAktueller Docker-Image-Tag
SELU_IMAGE_DIGESTImage-Digest zur Verifizierung
SELU_IMAGE_VERSIONRelease-Version (z.B. v1.5.0)
SELU_IMAGE_BUILDBuild-Nummer

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.

VariableBeschreibungStandard
SELU_UPDATER_URLURL des Updater-Sidecarshttp://selu-updater:8090
SELU_UPDATER_SHARED_SECRETGeteiltes Geheimnis zur Authentifizierung mit dem Sidecar
SELU_UPDATER_REQUEST_TIMEOUT_SECSTimeout für Anfragen an den Sidecar (Sekunden)30
VariableBeschreibungStandard
SELU__MARKETPLACE_URLAgent-Marketplace-API-URLhttps://selu.bot/api/marketplace/agents
SELU__INSTALLED_AGENTS_DIRVerzeichnis für installierte Marketplace-Agenten/app/installed_agents

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.

VariableBeschreibungStandard
SELU__EGRESS_PROXY_ADDREgress-Proxy-Adresse für Agent-Container0.0.0.0:8888
SELU__MAX_CHAIN_DEPTHMaximale Ereigniskettentiefe (verhindert Schleifen)3
.env
SELU__ENCRYPTION_KEY=a1b2c3d4e5f6...
# Release-Kanal
SELU_RELEASE_CHANNEL=stable
# Bei Betrieb hinter einem Reverse Proxy
# SELU__EXTERNAL_URL=https://selu.example.com

Du 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.

Selu verwendet einen doppelten Unterstrich (__) als Trennzeichen für verschachtelte Konfiguration. Zum Beispiel:

  • SELU__SERVER__PORT → Server-Port
  • SELU__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.

KanalUpdate-FrequenzAm besten für
StableAlle paar WochenProduktionsnutzung (empfohlen)
DevWöchentlichFrüher Zugang zu neuen Funktionen
NightlyTäglichTests (kann instabil sein)

Du kannst Kanäle auch im Dashboard unter System Updates wechseln.