CLI commands
Kanäle
openclaw channels
Verwalten Sie Chat-Kanalkonten und deren Laufzeitstatus auf dem Gateway.
Zugehörige Dokumentation:
- Kanalhandbücher: Kanäle
- Gateway-Konfiguration: Konfiguration
Häufige Befehle
openclaw channels list
openclaw channels status
openclaw channels capabilities
openclaw channels capabilities --channel discord --target channel:123
openclaw channels resolve --channel slack "#general" "@jane"
openclaw channels logs --channel all
Status / Funktionen / Auflösung / Logs
channels status:--probe,--timeout <ms>,--jsonchannels capabilities:--channel <name>,--account <id>(nur mit--channel),--target <dest>,--timeout <ms>,--jsonchannels resolve:<entries...>,--channel <name>,--account <id>,--kind <auto|user|group>,--jsonchannels logs:--channel <name|all>,--lines <n>,--json
channels status --probe ist der Live-Pfad: Auf einem erreichbaren Gateway führt er pro Konto
probeAccount- und optionale auditAccount-Prüfungen aus, sodass die Ausgabe den Transportstatus
plus Prüfergebnisse wie works, probe failed, audit ok oder audit failed enthalten kann.
Wenn der Gateway nicht erreichbar ist, fällt channels status auf reine Konfigurationszusammenfassungen
anstelle von Live-Prüfausgaben zurück.
Verwenden Sie openclaw sessions, Gateway sessions.list oder das Agent-Tool
sessions_list nicht als Signal für den Socket-Zustand eines Kanals. Diese Oberflächen melden
gespeicherte Konversationszeilen, nicht den Provider-Laufzeitstatus. Nach einem Neustart des Discord-Providers
kann ein verbundenes, aber stilles Konto fehlerfrei sein, auch wenn keine Discord-Sitzungszeile
erscheint, bis das nächste eingehende oder ausgehende Konversationsereignis eintritt.
Konten hinzufügen / entfernen
openclaw channels add --channel telegram --token <bot-token>
openclaw channels add --channel nostr --private-key "$NOSTR_PRIVATE_KEY"
openclaw channels remove --channel telegram --delete
channels remove funktioniert nur mit installierten/konfigurierten Kanal-Plugins. Verwenden Sie zuerst channels add für installierbare Katalogkanäle.
Bei laufzeitgestützten Kanal-Plugins fordert channels remove außerdem den laufenden Gateway auf, das ausgewählte Konto zu stoppen, bevor die Konfiguration aktualisiert wird. So bleibt der alte Listener beim Deaktivieren oder Löschen eines Kontos nicht bis zum Neustart aktiv.
Häufige nicht interaktive Hinzufügeoberflächen umfassen:
- Bot-Token-Kanäle:
--token,--bot-token,--app-token,--token-file - Signal/iMessage-Transportfelder:
--signal-number,--cli-path,--http-url,--http-host,--http-port,--db-path,--service,--region - Google Chat-Felder:
--webhook-path,--webhook-url,--audience-type,--audience - Matrix-Felder:
--homeserver,--user-id,--access-token,--password,--device-name,--initial-sync-limit - Nostr-Felder:
--private-key,--relay-urls - Tlon-Felder:
--ship,--url,--code,--group-channels,--dm-allowlist,--auto-discover-channels --use-envfür env-gestützte Authentifizierung des Standardkontos, sofern unterstützt
Wenn während eines flaggesteuerten add-Befehls ein Kanal-Plugin installiert werden muss, verwendet OpenClaw die Standardinstallationsquelle des Kanals, ohne die interaktive Plugin-Installationsaufforderung zu öffnen.
Wenn Sie openclaw channels add ohne Flags ausführen, kann der interaktive Assistent Folgendes abfragen:
- Konto-IDs pro ausgewähltem Kanal
- optionale Anzeigenamen für diese Konten
Bind configured channel accounts to agents now?
Wenn Sie das sofortige Binden bestätigen, fragt der Assistent, welcher Agent jedes konfigurierte Kanalkonto besitzen soll, und schreibt kontospezifische Routing-Bindungen.
Sie können dieselben Routing-Regeln später auch mit openclaw agents bindings, openclaw agents bind und openclaw agents unbind verwalten (siehe Agents).
Wenn Sie einem Kanal, der noch Single-Account-Einstellungen auf oberster Ebene verwendet, ein Konto hinzufügen, das nicht das Standardkonto ist, verschiebt OpenClaw kontospezifische Werte der obersten Ebene in die Kontozuordnung des Kanals, bevor das neue Konto geschrieben wird. Die meisten Kanäle legen diese Werte in channels.<channel>.accounts.default ab, aber gebündelte Kanäle können stattdessen ein vorhandenes passendes verschobenes Konto beibehalten. Matrix ist das aktuelle Beispiel: Wenn bereits ein benanntes Konto vorhanden ist oder defaultAccount auf ein vorhandenes benanntes Konto zeigt, behält die Verschiebung dieses Konto bei, statt ein neues accounts.default zu erstellen.
Das Routing-Verhalten bleibt konsistent:
- Vorhandene kanalbezogene Bindungen (ohne
accountId) stimmen weiterhin mit dem Standardkonto überein. channels adderstellt oder überschreibt im nicht interaktiven Modus keine Bindungen automatisch.- Die interaktive Einrichtung kann optional kontospezifische Bindungen hinzufügen.
Wenn Ihre Konfiguration bereits in einem gemischten Zustand war (benannte Konten vorhanden und Single-Account-Werte auf oberster Ebene weiterhin gesetzt), führen Sie openclaw doctor --fix aus, um kontospezifische Werte in das für diesen Kanal gewählte verschobene Konto zu übertragen. Die meisten Kanäle verschieben nach accounts.default; Matrix kann stattdessen ein vorhandenes benanntes/Standardziel beibehalten.
Anmelden und Abmelden (interaktiv)
openclaw channels login --channel whatsapp
openclaw channels logout --channel whatsapp
channels loginunterstützt--verbose.channels loginundlogoutkönnen den Kanal ableiten, wenn nur ein unterstütztes Login-Ziel konfiguriert ist.channels logoutbevorzugt den Live-Gateway-Pfad, wenn er erreichbar ist, sodass die Abmeldung jeden aktiven Listener stoppt, bevor der Authentifizierungszustand des Kanals gelöscht wird. Wenn ein lokaler Gateway nicht erreichbar ist, fällt der Befehl auf die lokale Authentifizierungsbereinigung zurück.- Führen Sie
channels loginin einem Terminal auf dem Gateway-Host aus. Agent-execblockiert diesen interaktiven Login-Ablauf; kanaleigene Agent-Login-Tools wiewhatsapp_loginsollten, sofern verfügbar, aus dem Chat verwendet werden.
Fehlerbehebung
- Führen Sie
openclaw status --deepfür eine umfassende Prüfung aus. - Verwenden Sie
openclaw doctorfür geführte Korrekturen. openclaw channels listgibtClaude: HTTP 403 ... user:profileaus → der Nutzungs-Snapshot benötigt den Scopeuser:profile. Verwenden Sie--no-usage, stellen Sie einen claude.ai-Sitzungsschlüssel (CLAUDE_WEB_SESSION_KEY/CLAUDE_WEB_COOKIE) bereit oder authentifizieren Sie sich erneut über Claude CLI.openclaw channels statusfällt auf reine Konfigurationszusammenfassungen zurück, wenn der Gateway nicht erreichbar ist. Wenn ein unterstützter Kanal-Credential über SecretRef konfiguriert ist, aber im aktuellen Befehlspfad nicht verfügbar ist, wird dieses Konto als konfiguriert mit herabgestuften Hinweisen gemeldet, statt es als nicht konfiguriert anzuzeigen.
Funktionsprüfung
Rufen Sie Hinweise zu Provider-Funktionen (Intents/Scopes, sofern verfügbar) plus statische Feature-Unterstützung ab:
openclaw channels capabilities
openclaw channels capabilities --channel discord --target channel:123
Hinweise:
--channelist optional; lassen Sie es weg, um jeden Kanal aufzulisten (einschließlich Erweiterungen).--accountist nur mit--channelgültig.--targetakzeptiertchannel:<id>oder eine reine numerische Kanal-ID und gilt nur für Discord.- Prüfungen sind providerspezifisch: Discord-Intents plus optionale Kanalberechtigungen; Slack-Bot- und User-Scopes; Telegram-Bot-Flags plus Webhook; Signal-Daemon-Version; Microsoft Teams-App-Token plus Graph-Rollen/Scopes (wo bekannt annotiert). Kanäle ohne Prüfungen melden
Probe: unavailable.
Namen in IDs auflösen
Lösen Sie Kanal-/Benutzernamen mithilfe des Provider-Verzeichnisses in IDs auf:
openclaw channels resolve --channel slack "#general" "@jane"
openclaw channels resolve --channel discord "My Server/#support" "@someone"
openclaw channels resolve --channel matrix "Project Room"
Hinweise:
- Verwenden Sie
--kind user|group|auto, um den Zieltyp zu erzwingen. - Die Auflösung bevorzugt aktive Treffer, wenn mehrere Einträge denselben Namen haben.
channels resolveist schreibgeschützt. Wenn ein ausgewähltes Konto über SecretRef konfiguriert ist, dieser Credential aber im aktuellen Befehlspfad nicht verfügbar ist, gibt der Befehl herabgestufte, nicht aufgelöste Ergebnisse mit Hinweisen zurück, statt den gesamten Lauf abzubrechen.channels resolveinstalliert keine Kanal-Plugins. Verwenden Siechannels add --channel <name>, bevor Sie Namen für einen installierbaren Katalogkanal auflösen.