Konfiguration
AiHummer wird durch ein konfiguriert Einstellungsverzeichnis, kein Haufen von Umgebungsvariablen. gateway.env ist nur Bootstrap: die Datenbank-DSN, Abhöradressen/-ports, der Hauptschlüssel und ähnliches. Jeder andere Schlüssel lebt in der Datenbank und wird zur Laufzeit oder über die Web-Admin-Oberfläche geändert aihummer settings CLI. Die Leitregel ist einfach: Alles, was einstellbar ist, kann in der Web-Oberfläche konfiguriert werden — nicht nur Umgebungsvariablen, und nicht festcodiert.
Die Auflösungsreihenfolge
Jede Katalogeinstellung wird auf die gleiche Weise gelöst, das erste Treffer gewinnt:
- Datenbank — ein durch die Admin-Oberfläche gesetzter Wert oder
aihummer settings set. - Standard — das standardmäßig mit der Version ausgelieferte eingebaute.
Die Umwelt ist bewusst kein Teil dieser Kette: für Katalogschlüssel ein AIHUMMER_* Variable in gateway.env ist ignoriert, selbst wenn es eingestellt ist. Das gibt jeder Einstellung genau eine Quelle der Wahrheit — die Datenbank — sodass ein UI-Wert niemals stillschweigend von einer vergessenen Zeile in einer Env-Datei überschattet werden kann.
[!NOTE] Um das Verhalten in der Produktion zu ändern, bearbeiten Sie nicht die Konfigurationsdateien – Sie ändern die Einstellung in der Admin-Oberfläche (Management → Einstellungen, eine durchsuchbare Seite) oder ausführen
aihummer settings set <KEY> <VALUE>(get/listzu lesen), und es dauert Effekt für diesen Arbeitsbereich. Der Installer selbst legt anfängliche Katalogwerte fest in die Datenbank überaihummer settings set.
Heiß vs Neustart erforderlich
Wie sich eine geänderte Einstellung auswirkt, hängt von der Taste ab:
| Verhalten | Beispiele | Wenn es zutrifft |
|---|---|---|
| Heiß | Werkzeugbereitstellung, maximale Tiefe des Unteragenten | Zur Laufzeit erneut lesen, kein Neustart |
| Neustart erforderlich | Abhöradresse, Verkabelung bestimmter Dienste | Beim nächsten Neustart des Gateways angewendet |
Hotkeys werden live neu eingelesen, sodass ein Werkzeug umgeschaltet oder angepasst werden kann subagent-depth tritt in der nächsten Runde in Kraft. Einige strukturelle Schlüssel wirken erst nach einem Neustart; die Admin-Oberfläche kennzeichnet, welcher welcher ist.
Bootstrap-Variablen bleiben nur in der Umgebung
Einige Variablen müssen in der Umgebung vorhanden sein, da sie benötigt werden, bevor der Einstellungskatalog (und die Datenbank, aus der er liest) existiert. Diese Bootstrap Variablen sind nur in der Umgebung und werden nicht in der Admin-Benutzeroberfläche angezeigt:
| Variable | Warum es Bootstrap ist |
|---|---|
AIHUMMER_DATABASE_URL |
Die Datenbank muss existieren, bevor eine datenbankgestützte Einstellung gelesen werden kann. |
AIHUMMER_DB_APP_URL |
Eingeschränkte Rolle DSN, die RLS aktiviert. |
AIHUMMER_MASTER_KEY |
base64-32 Bytes; entsperrt Geheimnisse im Ruhezustand / Tresor / BYOK. |
AIHUMMER_GATEWAY_ADDR |
Öffentliche Listen-Adresse (Standard :8780) — API, Kopplung, WS/SSE, eingehend und der App/Taschen-Proxy. |
AIHUMMER_WEBUI_ADDR |
Private Admin-Web-UI-Abhöradresse (Standard :8781), an der Wurzel serviert /; eingestellt auf 0 deaktivieren. |
AIHUMMER_BLOB_DIR |
Dateisystempfad des Blob-/Medienverzeichnisses — wird beim Booten benötigt. |
AIHUMMER_OIDC_ISSUER |
Schützt /v1/admin/* bevor die Benutzeroberfläche vertraut wird. |
Ops-Vernetzung wie der Telemetrie-OTLP-Endpunkt fällt in dieselbe Bootstrap-Kategorie. Alles, was nicht auf dieser kurzen Liste steht, ist ein Katalogschlüssel: es lebt in der Datenbank, und die Umgebung wird dafür ignoriert.
[!WARNING] Behalten
AIHUMMER_MASTER_KEYsicher und gesichert getrennt aus deiner Datenbank Sicherung. Es entschlüsselt den Anmeldeinformationen-Tresor; verlieren Sie ihn, verlieren Sie die verschlüsselten Geheimnisse kann nicht wiederhergestellt werden.
Die Konfigurationsdatei
Bei host-nativen Installationen befindet sich die Bootstrap-Umgebung in einer einzigen Datei, die die systemd-Einheit lädt:
~/.aihummer/etc/gateway.env
Bearbeite diese Datei nur für Bootstrap-Werte, starten Sie dann den Gateway-Dienst neu, um die Änderungen anzuwenden:
# ~/.aihummer/etc/gateway.env (excerpt)
AIHUMMER_DATABASE_URL=postgres://user:pass@localhost:5432/aihummer
AIHUMMER_MASTER_KEY=base64-32-bytes...
AIHUMMER_GATEWAY_ADDR=:8780
AIHUMMER_WEBUI_ADDR=:8781
AIHUMMER_OIDC_ISSUER=https://idp.example/realms/main
systemctl restart aihummer-gateway
Alles über diese Bootstrap-Schlüssel hinaus — Agenten, Werkzeuge, Speichermodus, Denkstrategien, Budgets, Schutzmaßnahmen und der Rest — wird über die Einstellungen der Admin-Oberfläche (oder über aihummer settings), nicht aus dieser Datei: env wird für diese Schlüssel ignoriert.
Verdrahtung optionaler Funktionen
Viele Funktionen sind deaktiviert, bis Sie sie auf einen unterstützenden Dienst ausrichten. Alle diese Schlüssel sind Katalogeinstellungen (sie befinden sich in der Datenbank): Legen Sie sie in der Admin-Benutzeroberfläche fest (Management → Einstellungen) oder mit der CLI; sie darin zu setzen gateway.env tut nichts – env wird für sie ignoriert. Für Sidecars, die aus dem Bundle installiert werden (STT/TTS usw.), füllt der Installer die Werte selbst in die Datenbank ein.
# Wire a real model (unset → deterministic mock)
aihummer settings set AIHUMMER_LLM_PROVIDER openai
aihummer settings set AIHUMMER_LLM_MODEL gpt-4o-mini
aihummer settings set AIHUMMER_LLM_GATEWAY_URL https://api.openai.com/v1
# Enable tools by pointing at their backends
# Voice sidecars (STT/TTS auto-configured by the installer)
aihummer settings set AIHUMMER_STT_URL http://localhost:8001
aihummer settings set AIHUMMER_TTS_URL http://localhost:8002
# Real vector store + embedder (example URLs; the embedder is installed with
# --with-embedder, otherwise memory uses the lexical fallback)
aihummer settings set AIHUMMER_QDRANT_URL http://localhost:6333
aihummer settings set AIHUMMER_EMBEDDER_URL http://localhost:8080
[!TIP] Ein echtes Modell ist niemals erforderlich. Ohne
AIHUMMER_LLM_*verkabelt, Antworten kommen von einem deterministischen Mock; AiHummer läuft auch auf kostenlosem/lokalem OpenAI-kompatiblen Endpunkte und ein Codex/ChatGPT-Abonnement-Transport, mit optionalem BYOK.
Benachrichtigungen
Die Admin-Oberflächen Benachrichtigungen Seite (unter “Steuerung”) ist das Postfach der Instanz für Ereignisse (Administratoranmeldung, verfügbares/angewendetes Update, Sidecar fährt herunter oder wird wiederhergestellt usw.) mit Filtern nach Kategorie, Schweregrad und ungelesen. Daneben befindet sich ein Kategorie × Lieferkanal-Matrix: für jede Ereigniskategorie, die Sie aktivieren Weboberfläche, E-Mail, Telegramm und drücken Kanäle. Web-UI-Benachrichtigungen werden lokal zugestellt; Telegram wird über die Schaltfläche „Telegram verknüpfen“ (Deep Link) verbunden, E-Mail wird aktiviert, sobald die Support-Adresse verifiziert ist, und Push-Benachrichtigungen erfolgen in der mobilen App. Kritische Ereignisse können im Web-UI-Kanal nicht stummgeschaltet werden.
Wohin als Nächstes
- Sperren Sie den Admin-Login: Erste Anmeldung.
- Siehe, wo Dateien gespeichert sind: Installation.
- Überprüfen Sie die Voraussetzungen: Anforderungen.