CLI commands
Kanäle
openclaw channels
Verwalten Sie Chatkanal-Konten und deren Laufzeitstatus auf dem Gateway.
Zugehörige Dokumentation:
- Kanalanleitungen: Kanäle
- Gateway-Konfiguration: Konfiguration
Häufig verwendete Befehle
openclaw channels listopenclaw channels list --allopenclaw channels statusopenclaw channels capabilitiesopenclaw channels capabilities --channel discord --target channel:123openclaw channels resolve --channel slack "#general" "@jane"openclaw channels logs --channel allchannels list zeigt nur Chatkanäle an: standardmäßig konfigurierte Konten mit den Statuskennzeichnungen installed, configured und enabled für jedes Konto (--json für maschinenlesbare Ausgabe). Übergeben Sie --all, um zusätzlich gebündelte Kanäle anzuzeigen, für die noch kein Konto konfiguriert ist, sowie installierbare Katalogkanäle, die sich noch nicht auf dem Datenträger befinden. Provider-Authentifizierung und Modellnutzung werden an anderer Stelle verwaltet: openclaw models auth list für Provider-Authentifizierungsprofile, openclaw status oder openclaw models list für Nutzung und Kontingent.
Status / Funktionen / Auflösung / Protokolle
channels status:--channel <name>,--probe,--timeout <ms>(Standardwert:10000),--jsonchannels capabilities:--channel <name>,--account <id>(erfordert--channel),--target <dest>(erfordert--channel),--timeout <ms>(Standardwert:10000, begrenzt auf30000),--jsonchannels resolve <entries...>:--channel <name>,--account <id>,--kind <auto|user|group>(Standardwert:auto),--jsonchannels logs:--channel <name|all>(Standardwert:all),--lines <n>(Standardwert:200),--json
channels status --probe ist der Live-Pfad: Bei einem erreichbaren Gateway führt er für jedes Konto
probeAccount- und optionale auditAccount-Prüfungen aus, sodass die Ausgabe neben dem
Transportstatus auch Prüfergebnisse wie works, probe failed, audit ok oder audit failed
enthalten kann. Wenn der Gateway nicht erreichbar ist, greift channels status anstelle der
Live-Prüfausgabe auf Zusammenfassungen zurück, die ausschließlich auf der Konfiguration basieren.
Verwenden Sie openclaw sessions, Gateway sessions.list oder das Agent-Tool
sessions_list nicht als Signal für den Zustand des Channel-Sockets. Diese Schnittstellen melden
gespeicherte Konversationszeilen, nicht den Laufzeitstatus des Providers. Nach einem Neustart des Discord-Providers
kann ein verbundenes, aber inaktives Konto fehlerfrei funktionieren, obwohl keine Discord-Sitzungszeile
angezeigt wird, bis das nächste ein- 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 --deletechannels remove funktioniert nur mit installierten/konfigurierten Channel-Plugins. Verwenden Sie für installierbare Katalog-Channels zuerst channels add. Ohne --delete werden Sie gefragt, ob das Konto deaktiviert werden soll, und dessen Konfiguration bleibt erhalten; --delete entfernt die Konfigurationseinträge ohne Rückfrage.
Bei laufzeitgestützten Channel-Plugins weist channels remove außerdem den laufenden Gateway an, das ausgewählte Konto zu stoppen, bevor die Konfiguration aktualisiert wird. Dadurch bleibt beim Deaktivieren oder Löschen eines Kontos der alte Listener nicht bis zum Neustart aktiv.
Nicht interaktive, kanalübergreifend verwendete Hinzufügen-Flags: --account <id>, --name <name>, --token, --token-file, --bot-token, --app-token, --secret, --secret-file, --password, --cli-path, --url, --base-url, --http-url, --auth-dir und --use-env (umgebungsvariablenbasierte Authentifizierung, nur für das Standardkonto, sofern unterstützt). Kanalspezifische Flags umfassen:
| Kanal | Flags |
|---|---|
| Google Chat | --webhook-path, --webhook-url, --audience-type, --audience |
| iMessage | --cli-path, --db-path, --service, --region |
| Matrix | --homeserver, --user-id, --access-token, --password, --device-name, --initial-sync-limit |
| Nostr | --private-key, --relay-urls |
| Signal | --signal-number, --cli-path, --http-url, --http-host, --http-port |
| Tlon | --ship, --url, --code, --group-channels, --dm-allowlist, --auto-discover-channels |
--auth-dir |
Wenn während eines flaggesteuerten Hinzufügen-Befehls ein Kanal-Plugin installiert werden muss, verwendet OpenClaw die standardmäßige Installationsquelle des Kanals, ohne die interaktive Eingabeaufforderung zur Plugin-Installation zu öffnen.
Wenn Sie openclaw channels add ohne Flags ausführen, kann der interaktive Assistent Sie zu Eingaben auffordern:
- Konto-IDs pro ausgewähltem Kanal
- optionale Anzeigenamen für diese Konten
Route these channel accounts to agents now?
Wenn Sie die Bindung jetzt bestätigen, fragt der Assistent, welcher Agent für jedes konfigurierte Kanalkonto zuständig sein 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 Agenten).
Wenn Sie einem Kanal, der noch übergeordnete Einzelkonto-Einstellungen verwendet, ein Konto hinzufügen, das nicht das Standardkonto ist, überführt OpenClaw diese übergeordneten Werte in die Kontozuordnung des Kanals, bevor das neue Konto geschrieben wird. Bei der Überführung wird ein vorhandenes benanntes Konto wiederverwendet, wenn der Kanal genau eines hat oder wenn defaultAccount auf eines verweist; andernfalls werden die Werte unter channels.<channel>.accounts.default abgelegt.
Das Routing-Verhalten bleibt konsistent:
- Vorhandene Bindungen nur für Kanäle (ohne
accountId) stimmen weiterhin mit dem Standardkonto überein. channels adderstellt oder überschreibt Bindungen im nicht interaktiven Modus nicht automatisch.- Bei der interaktiven Einrichtung können optional kontospezifische Bindungen hinzugefügt werden.
Wenn sich Ihre Konfiguration bereits in einem gemischten Zustand befand (benannte Konten vorhanden und übergeordnete Einzelkonto-Werte weiterhin festgelegt), führen Sie openclaw doctor --fix aus, um kontospezifische Werte in das für diesen Kanal ausgewählte überführte Konto zu verschieben.
An- und Abmeldung (interaktiv)
openclaw channels login --channel whatsappopenclaw channels logout --channel whatsappchannels loginunterstützt--account <id>und--verbose;channels logoutunterstützt--account <id>.channels loginundlogoutkönnen den Kanal ableiten, wenn nur ein konfigurierter Kanal diese Aktion unterstützt; bei mehreren müssen Sie--channelangeben.channels logoutbevorzugt den aktiven Gateway-Pfad, wenn dieser erreichbar ist, sodass beim Abmelden alle aktiven Listener beendet werden, bevor der Authentifizierungsstatus des Kanals gelöscht wird. Wenn ein lokaler Gateway nicht erreichbar ist, wird ersatzweise die lokale Authentifizierung bereinigt; beigateway.mode: "remote"führt der Gateway-Fehler stattdessen zum Fehlschlagen des Befehls.- Nach einer erfolgreichen Anmeldung fordert die CLI einen erreichbaren lokalen Gateway auf, das Konto zu starten; im Remote-Modus speichert sie die Authentifizierung lokal und weist darauf hin, dass die Remote-Laufzeit nicht neu gestartet wurde.
- Führen Sie
channels loginin einem Terminal auf dem Gateway-Host aus. Agent-execblockiert diesen interaktiven Anmeldeablauf; kanaleigene Agent-Anmeldewerkzeuge wiewhatsapp_loginsollten, sofern verfügbar, im 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 statusgreift auf reine Konfigurationszusammenfassungen zurück, wenn der Gateway nicht erreichbar ist. Wenn Anmeldedaten eines unterstützten Kanals über SecretRef konfiguriert, im aktuellen Befehlspfad jedoch nicht verfügbar sind, wird das Konto als konfiguriert mit Hinweisen auf eingeschränkte Funktionalität gemeldet, anstatt es als nicht konfiguriert anzuzeigen.
Prüfung der Fähigkeiten
Rufen Sie Hinweise zu den Provider-Fähigkeiten (Intents/Bereiche, sofern verfügbar) sowie die statische Funktionsunterstützung ab:
openclaw channels capabilitiesopenclaw channels capabilities --channel discord --target channel:123Hinweise:
--channelist optional; lassen Sie es weg, um alle Kanäle aufzulisten (einschließlich der von Plugins bereitgestellten Kanäle).--accountist nur zusammen mit--channelgültig.--targetakzeptiertchannel:<id>oder eine unverarbeitete numerische Kanal-ID und gilt nur für Discord. Bei Discord-Sprachkanälen kennzeichnet die Berechtigungsprüfung fehlende Berechtigungen fürViewChannel,Connect,Speak,SendMessagesundReadMessageHistory.- Prüfungen sind Provider-spezifisch: Discord-Bot-Identität und Intents sowie optionale Kanalberechtigungen; Slack-Bot- und Benutzerbereiche; Telegram-Bot-Flags und Webhook; Signal-Daemon-Version; Microsoft-Teams-App-Token und Graph-Rollen/-Bereiche (soweit bekannt mit Anmerkungen). 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. - Bei mehreren Einträgen mit demselben Namen werden aktive Übereinstimmungen bevorzugt.
channels resolveist schreibgeschützt. Wenn ein ausgewähltes Konto über SecretRef konfiguriert ist, diese Anmeldedaten im aktuellen Befehlspfad jedoch nicht verfügbar sind, gibt der Befehl eingeschränkte, nicht aufgelöste Ergebnisse mit Hinweisen zurück, anstatt den gesamten Durchlauf abzubrechen.channels resolveinstalliert keine Kanal-Plugins. Verwenden Siechannels add --channel <name>, bevor Sie Namen für einen installierbaren Katalogkanal auflösen.