Skip to content
Abo -30% SUB30
> docs/openclaw-json

OpenClaw-Konfigurationsreferenz

4 min Lesezeit Configuration Zuletzt aktualisiert 05. March 2026

Was openclaw.json macht

Die openclaw.json-Datei ist die Hauptkonfigurationsdatei deiner OpenClaw-Instanz. Sie steuert, wie das Gateway Nutzer authentifiziert, welchen LLM-Anbieter du nutzt und welche Messenger-Kanäle aktiv sind.

OpenClaw Konfigurationseditor

ClawHosters generiert diese Datei automatisch basierend auf deinen Dashboard-Einstellungen. Wenn du deinen LLM-Anbieter änderst, einen Telegram-Bot hinzufügst oder andere Einstellungen aktualisierst, erstellt ClawHosters die Konfiguration neu und deployt sie auf deine Instanz.

Du musst diese Datei nicht manuell bearbeiten, es sei denn, du verbindest dich per SSH für erweiterte Konfiguration.

Dateispeicherort

Auf deiner Instanz ist die Konfigurationsdatei gespeichert unter:

text
/root/.openclaw/openclaw.json

Das ist ein Bind-Mount von /opt/openclaw/dotopenclaw/openclaw.json auf dem Host-System. Änderungen an einem der beiden Pfade betreffen dieselbe Datei.

Konfigurationsstruktur

Die Datei ist ein JSON-Objekt mit bis zu fünf übergeordneten Abschnitten. Nicht alle Abschnitte sind auf jeder Instanz vorhanden. Sie werden nur eingefügt, wenn sie relevant sind.

json
{
  "gateway": { ... },
  "commands": { ... },
  "models": { ... },
  "agents": { ... },
  "channels": { ... }
}

Hinweis: API-Schlüssel werden NICHT in openclaw.json gespeichert. Sie werden als Docker-Umgebungsvariablen über die .env-Datei übergeben. Siehe Umgebungsvariablen für Details.

gateway (Immer vorhanden)

Steuert, wie das OpenClaw-Gateway läuft und Anfragen authentifiziert.

json
{
  "gateway": {
    "mode": "local",
    "auth": {
      "mode": "token",
      "token": "sha256-gehashter-token"
    },
    "controlUi": {
      "allowInsecureAuth": true
    }
  }
}
Feld Typ Beschreibung
mode string Immer "local" für ClawHosters-Instanzen
auth.mode string Authentifizierungsmethode, immer "token"
auth.token string SHA256-gehashter Gateway-Token für Web-UI-Zugriff
controlUi.allowInsecureAuth boolean Erlaubt Token-basierte Auth ohne Geräte-Pairing

Der Gateway-Abschnitt wird immer generiert, auch auf Instanzen ohne konfiguriertes LLM oder Messenger.

commands (Bedingt)

Aktiviert eingebaute Befehle für die OpenClaw-Instanz. Unterstützt aktuell den Restart-Befehl.

json
{
  "commands": {
    "restart": true
  }
}
Feld Typ Beschreibung
restart boolean Aktiviert den /restart-Befehl zum Neustarten des Gateway-Prozesses

agents (Bedingt)

Gibt das Standard-LLM-Modell für die Instanz an. Nur vorhanden, wenn ein LLM konfiguriert ist.

json
{
  "agents": {
    "defaults": {
      "model": {
        "primary": "anthropic/claude-3-haiku"
      }
    }
  }
}
Feld Typ Beschreibung
agents.defaults.model.primary string Das Standardmodell im provider/model-Format

Alle Modelle verwenden das Format provider/model-name:

Anbieter Beispiel
Anthropic anthropic/claude-3-haiku
OpenAI openai/gpt-4o
OpenRouter openrouter/anthropic/claude-3-opus
Google google/gemini-pro
DeepSeek deepseek/deepseek-chat
Mistral mistral/mistral-large-latest
Groq groq/llama-3.1-70b-versatile

channels (Bedingt)

Konfiguriert Messenger-Integrationen. Jeder Kanal wird nur einbezogen, wenn er in deinem Dashboard eingerichtet wurde.

Telegram

json
{
  "channels": {
    "telegram": {
      "enabled": true,
      "botToken": "123456789:ABCdefGHIjklMNOpqrsTUVwxyz",
      "dmPolicy": "owner_only",
      "allowFrom": ["*"]
    }
  }
}
Feld Typ Beschreibung
enabled boolean Ob Telegram aktiv ist
botToken string Dein Telegram-Bot-Token vom BotFather
dmPolicy string "owner_only" oder "open", steuert wer den Bot anschreiben darf
allowFrom array Erlaubte Nutzer-IDs bei dmPolicy "open"

Discord

json
{
  "channels": {
    "discord": {
      "enabled": true,
      "token": "bot-token-hier",
      "dm": {
        "enabled": true,
        "policy": "pairing",
        "allowFrom": ["*"]
      }
    }
  }
}
Feld Typ Beschreibung
enabled boolean Ob Discord aktiv ist
token string Discord-Bot-Token
dm.enabled boolean Ob Direktnachrichten erlaubt sind
dm.policy string "pairing" erfordert zuerst Geräte-Pairing
dm.allowFrom array Erlaubte Nutzer-IDs für DMs

Slack

json
{
  "channels": {
    "slack": {
      "enabled": true,
      "botToken": "xoxb-...",
      "appToken": "xapp-..."
    }
  }
}
Feld Typ Beschreibung
enabled boolean Ob Slack aktiv ist
botToken string Slack-Bot-Token (beginnt mit xoxb-)
appToken string Slack-App-Level-Token (beginnt mit xapp-)

WhatsApp

json
{
  "channels": {
    "whatsapp": {
      "enabled": true,
      "dmPolicy": "owner_only"
    }
  }
}
Feld Typ Beschreibung
enabled boolean Ob WhatsApp aktiv ist
dmPolicy string "owner_only" oder "open"
allowFrom array Erlaubte Nutzer-IDs bei Policy "open"

Minimal- vs Voll-Beispiel

Eine frisch erstellte Instanz ohne LLM oder Messenger hat nur den Gateway-Abschnitt:

json
{
  "gateway": {
    "mode": "local",
    "auth": {
      "mode": "token",
      "token": "a1b2c3d4..."
    },
    "controlUi": {
      "allowInsecureAuth": true
    }
  }
}

Eine voll konfigurierte Instanz mit Anthropic-LLM und Telegram:

json
{
  "gateway": {
    "mode": "local",
    "auth": {
      "mode": "token",
      "token": "a1b2c3d4..."
    },
    "controlUi": {
      "allowInsecureAuth": true
    }
  },
  "commands": {
    "restart": true
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "anthropic/claude-3-haiku"
      }
    }
  },
  "channels": {
    "telegram": {
      "enabled": true,
      "botToken": "123456789:ABCdef...",
      "dmPolicy": "owner_only",
      "allowFrom": ["*"]
    }
  }
}

Hinweis: Der Anthropic-API-Schlüssel wird als Docker-Umgebungsvariable ANTHROPIC_API_KEY übergeben, nicht in dieser Datei.

Wie Konfigurationsänderungen angewendet werden

Wenn du Einstellungen in deinem Dashboard aktualisierst:

  1. ClawHosters generiert openclaw.json mit deinen neuen Einstellungen neu
  2. Die Datei wird per SCP auf deine Instanz hochgeladen
  3. Der doctor --fix-Befehl läuft, um Plugin-Änderungen anzuwenden
  4. Deine Instanz übernimmt die neue Konfiguration

Dieser Vorgang dauert einige Sekunden. Während des Updates läuft deine Instanz weiter. Es gibt keine Ausfallzeit für Konfigurationsänderungen.

Manuelle Bearbeitung per SSH

Wenn du dich per SSH mit deiner Instanz verbindest, kannst du die Konfiguration unter /root/.openclaw/openclaw.json einsehen. Du kannst sie manuell bearbeiten, aber beachte:

  • Änderungen über das Dashboard überschreiben deine manuellen Bearbeitungen
  • Ungültiges JSON verhindert den Start des Gateways
  • Ein fehlender gateway-Abschnitt bricht die Authentifizierung

Wenn du die Konfiguration kaputt machst, nutze den "Redeployment"-Button in deinem Dashboard, um sie aus deinen gespeicherten Einstellungen neu zu generieren.

Verwandte Dokumentation

Verwandte Dokumentation