Zum Inhalt springen

Umgebungsvariablen

Selu wird über Umgebungsvariablen konfiguriert, die in deiner .env-Datei oder in deiner Docker-Compose-Konfiguration gesetzt werden.

Zentrale Server-Konfiguration. Diese verwenden das Präfix SELU__ mit doppeltem Unterstrich als Trennzeichen (geparst durch die Konfigurationsbibliothek mit Präfix SELU und Separator __).

VariableStandardBeschreibung
SELU__ENCRYPTION_KEYErforderlich. Verschlüsselungsschlüssel für gespeicherte Zugangsdaten (API-Schlüssel, Token). Mindestens 32 zufällige Zeichen verwenden.
SELU__SERVER__PORT3000Port, auf dem Dashboard und API hören.
SELU__SERVER__HOST0.0.0.0IP-Adresse zum Binden.
SELU__DATABASE__URLsqlite:///app/data/selu.db?mode=rwcSQLite-Verbindungszeichenkette.
SELU__EXTERNAL_URLÖffentliche URL deiner Instanz. Setze dies hinter einem Reverse Proxy für korrekte Webhook-Callback-URLs.
SELU__BASE_PATHURL-Pfad-Präfix für Reverse-Proxy-Sub-Pfad-Deployments (z.B. /selu).
SELU__MARKETPLACE_URLhttps://selu.bot/api/marketplace/agentsAgent-Marketplace-API-Endpunkt.
SELU__INSTALLED_AGENTS_DIR/app/installed_agentsVerzeichnis, in dem Marketplace-Agenten installiert werden.
SELU__AGENTS_DIR/app/agentsVerzeichnis für mitgelieferte Standard-Agent-Definitionen.
SELU__RELEASE_METADATA_URLhttps://selu.bot/api/releases/seluRelease-Metadaten-Endpunkt für das Update-System.
SELU__EGRESS_PROXY_ADDR0.0.0.0:8888Egress-Proxy-Adresse für Capability-Container.
SELU__MAX_CHAIN_DEPTH3Maximale Ereigniskettentiefe zur Vermeidung endloser Schleifen.

Variablen des eingebauten Update-Systems. SELU_RELEASE_CHANNEL und die SELU_IMAGE_*-Variablen verwenden einfache Unterstriche, da sie direkt über std::env::var gelesen werden, nicht über die Konfigurationsbibliothek.

VariableStandardBeschreibung
SELU_RELEASE_CHANNELstableRelease-Kanal: stable, dev oder nightly.
SELU_IMAGE_TAGAktueller Docker-Image-Tag. Automatisch vom Update-System verwaltet.
SELU_IMAGE_DIGESTAktueller Image-Digest zur Verifizierung. Automatisch verwaltet.
SELU_IMAGE_VERSIONAktuelle semantische Version (z.B. v1.5.0-dev). Automatisch verwaltet.
SELU_IMAGE_BUILDAktuelle Build-Nummer. Automatisch verwaltet.

Diese Variablen konfigurieren, wie der Orchestrator mit dem Updater-Sidecar kommuniziert.

VariableStandardBeschreibung
SELU_UPDATER_URLhttp://selu-updater:8090URL des Updater-Sidecar-Service.
SELU_UPDATER_SHARED_SECRETGeteiltes Geheimnis zur Authentifizierung mit dem Updater-Sidecar (gesendet als X-Selu-Updater-Secret-Header).
SELU_UPDATER_REQUEST_TIMEOUT_SECS30Timeout für Anfragen an das Updater-Sidecar.

Der Updater-Sidecar ist ein separater Container, der Updates durchführt, während Selu neu startet. Er verwendet das Präfix UPDATER__ mit doppeltem Unterstrich als Trennzeichen.

VariableStandardBeschreibung
UPDATER__SERVER__HOST0.0.0.0Host, auf dem die Updater-API hört.
UPDATER__SERVER__PORT8090Port, auf dem die Updater-API hört.
UPDATER__SHARED_SECRETGeteiltes Geheimnis zur Authentifizierung von Anfragen des Orchestrators.
UPDATER__COMPOSE_FILE./docker-compose.ymlPfad zur Docker-Compose-Datei.
UPDATER__COMPOSE_PROJECT_DIRDocker-Compose-Projektverzeichnis.
UPDATER__COMPOSE_SERVICEseluService-Name in der Compose-Datei zum Aktualisieren.
UPDATER__UPDATER_SERVICEService-Name des Updaters selbst in der Compose-Datei.
UPDATER__COMPOSE_ENV_FILE./.envPfad zur .env-Datei zum Persistieren von Update-Variablen.
UPDATER__HEALTH_URLhttp://127.0.0.1:3000/api/healthHealth-Check-Endpunkt zur Verifizierung von Updates.
UPDATER__HEALTH_TIMEOUT_SECS90Wartezeit für Health Checks nach einem Update.
UPDATER__HEALTH_INTERVAL_SECS3Intervall zwischen Health-Check-Versuchen.
UPDATER__DOCKER_BINPfad zur Docker-Binary.
UPDATER__IMAGE_REPOghcr.io/selu-bot/seluDocker-Image-Repository für Selu.
UPDATER__SELF_UPDATE_ON_APPLYfalseOb sich der Sidecar während des gleichen Update-Laufs selbst aktualisiert.

Der Updater kann auch einen WhatsApp-Bridge-Container verwalten:

VariableStandardBeschreibung
UPDATER__WHATSAPP_BRIDGE_ENABLEDWhatsApp-Bridge-Sidecar-Verwaltung aktivieren.
UPDATER__WHATSAPP_BRIDGE_IMAGE_REPODocker-Image für die WhatsApp-Bridge.
UPDATER__WHATSAPP_BRIDGE_CONTAINER_NAMEContainer-Name für die WhatsApp-Bridge.
UPDATER__WHATSAPP_BRIDGE_DATA_VOLUMEDaten-Volume für die WhatsApp-Bridge.
UPDATER__WHATSAPP_BRIDGE_NETWORKDocker-Netzwerk für die WhatsApp-Bridge.
UPDATER__WHATSAPP_BRIDGE_PORTPort für die WhatsApp-Bridge.

LLM-Anbieter-Zugangsdaten werden nicht über Umgebungsvariablen konfiguriert. Sie werden verschlüsselt in der Datenbank gespeichert und über das Selu-Dashboard unter Einstellungen → Anbieter verwaltet.

Unterstützte Anbieter: Anthropic, OpenAI, AWS Bedrock und Pico (OpenAI-kompatibler lokaler AI-Server).

Kanal-Zugangsdaten (Telegram-Bot-Token, BlueBubbles/iMessage-Konfiguration) werden nicht über Umgebungsvariablen konfiguriert. Sie werden über das Dashboard unter Pipes verwaltet.

KanalUpdate-FrequenzBeschreibung
stableAlle paar WochenGetestete Releases mit vollständigen Changelogs
devWöchentlichNeuere Funktionen und Verbesserungen
nightlyTäglichBuilds vom Main-Branch (können instabil sein)

Setze deinen bevorzugten Kanal mit SELU_RELEASE_CHANNEL oder ändere ihn im System-Updates-Interface.