openclaw channels
Zarządzaj kontami kanałów czatu i ich stanem działania w Gateway.
Powiązana dokumentacja:
- Przewodniki po kanałach: Kanały
- Konfiguracja Gateway: Konfiguracja
Typowe polecenia
channels list wyświetla tylko kanały czatu: domyślnie skonfigurowane konta wraz ze znacznikami stanu installed, configured i enabled dla każdego konta (--json zapewnia dane wyjściowe przeznaczone do przetwarzania maszynowego). Użyj --all, aby wyświetlić także wbudowane kanały, które nie mają jeszcze skonfigurowanego konta, oraz kanały z katalogu dostępne do zainstalowania, których nie ma jeszcze na dysku. Uwierzytelnianie dostawców i wykorzystanie modeli są obsługiwane gdzie indziej: openclaw models auth list służy do wyświetlania profili uwierzytelniania dostawców, a openclaw status lub openclaw models list — do sprawdzania wykorzystania i limitów.
Stan / możliwości / rozpoznawanie / dzienniki
channels status:--channel <name>,--probe,--timeout <ms>(domyślnie10000),--jsonchannels capabilities:--channel <name>,--account <id>(wymaga--channel),--target <dest>(wymaga--channel),--timeout <ms>(domyślnie10000, maksymalnie30000),--jsonchannels resolve <entries...>:--channel <name>,--account <id>,--kind <auto|user|group>(domyślnieauto),--jsonchannels logs:--channel <name|all>(domyślnieall),--lines <n>(domyślnie200),--json
channels status --probe korzysta ze ścieżki aktywnego środowiska: w osiągalnym Gateway uruchamia dla każdego konta kontrole probeAccount i opcjonalnie auditAccount, dzięki czemu dane wyjściowe mogą obejmować stan transportu oraz wyniki kontroli, takie jak works, probe failed, audit ok lub audit failed. Jeśli Gateway jest nieosiągalny, channels status zamiast wyników aktywnych kontroli wyświetla podsumowania oparte wyłącznie na konfiguracji.
Nie używaj openclaw sessions, sessions.list w Gateway ani narzędzia agenta sessions_list jako wskaźnika stanu połączenia kanału. Te mechanizmy raportują zapisane wiersze konwersacji, a nie stan działania dostawcy. Po ponownym uruchomieniu dostawcy Discord połączone, lecz nieaktywne konto może działać prawidłowo, mimo że żaden wiersz sesji Discord nie pojawi się do czasu następnego przychodzącego lub wychodzącego zdarzenia konwersacji.
Dodawanie / usuwanie kont
channels remove działa tylko na zainstalowanych lub skonfigurowanych Pluginach kanałów. W przypadku kanałów z katalogu dostępnych do zainstalowania najpierw użyj channels add. Bez --delete polecenie pyta o wyłączenie konta i zachowuje jego konfigurację; --delete usuwa wpisy konfiguracji bez pytania o potwierdzenie.
W przypadku Pluginów kanałów obsługiwanych przez środowisko uruchomieniowe channels remove przed aktualizacją konfiguracji zleca również działającemu Gateway zatrzymanie wybranego konta, dzięki czemu wyłączenie lub usunięcie konta nie pozostawia starego procesu nasłuchującego aktywnego aż do ponownego uruchomienia.
Flagi nieinteraktywnego dodawania wspólne dla kanałów: --account <id>, --name <name>, --token, --token-file, --bot-token, --app-token, --secret, --secret-file, --password, --cli-path, --url, --base-url, --http-url, --auth-dir oraz --use-env (uwierzytelnianie oparte na zmiennych środowiskowych, tylko dla konta domyślnego, jeśli jest obsługiwane). Flagi właściwe dla kanałów obejmują:
Jeśli podczas polecenia dodawania sterowanego flagami trzeba zainstalować Plugin kanału, OpenClaw używa domyślnego źródła instalacji kanału bez otwierania interaktywnego monitu instalacji Pluginu.
Po uruchomieniu
openclaw channels add bez flag interaktywny kreator może poprosić o:
- identyfikatory kont dla każdego wybranego kanału
- opcjonalne nazwy wyświetlane tych kont
Route these channel accounts to agents now?
openclaw agents bindings, openclaw agents bind i openclaw agents unbind (zobacz agenci).
Gdy dodajesz konto inne niż domyślne do kanału, który nadal korzysta z ustawień pojedynczego konta na najwyższym poziomie, OpenClaw przed zapisaniem nowego konta przenosi te wartości najwyższego poziomu do mapy kont kanału. Podczas przenoszenia ponownie wykorzystuje istniejące nazwane konto, jeśli kanał ma dokładnie jedno konto lub jeśli wskazuje je defaultAccount; w przeciwnym razie wartości trafiają do channels.<channel>.accounts.default.
Działanie routingu pozostaje spójne:
- Istniejące powiązania dotyczące tylko kanału (bez
accountId) nadal odpowiadają kontu domyślnemu. channels addw trybie nieinteraktywnym nie tworzy ani nie modyfikuje automatycznie powiązań.- Konfiguracja interaktywna może opcjonalnie dodać powiązania ograniczone do kont.
openclaw doctor --fix, aby przenieść wartości właściwe dla konta do konta wybranego do przeniesienia w danym kanale.
Logowanie i wylogowywanie (interaktywne)
channels loginobsługuje--account <id>i--verbose;channels logoutobsługuje--account <id>.channels loginilogoutmogą ustalić kanał, gdy tylko jeden skonfigurowany kanał obsługuje daną czynność; jeśli jest ich kilka, użyj--channel.channels logoutpreferuje ścieżkę działającego Gateway, gdy jest on osiągalny, dzięki czemu wylogowanie zatrzymuje aktywny proces nasłuchujący przed wyczyszczeniem stanu uwierzytelniania kanału. Jeśli lokalny Gateway jest nieosiągalny, polecenie przechodzi do lokalnego czyszczenia uwierzytelniania; przygateway.mode: "remote"błąd Gateway powoduje zamiast tego niepowodzenie polecenia.- Po pomyślnym zalogowaniu CLI zleca osiągalnemu lokalnemu Gateway uruchomienie konta; w trybie zdalnym zapisuje uwierzytelnianie lokalnie i informuje, że zdalne środowisko uruchomieniowe nie zostało ponownie uruchomione.
- Uruchamiaj
channels loginw terminalu na hoście Gateway.execagenta blokuje ten interaktywny proces logowania; w miarę dostępności do logowania z czatu należy używać natywnych dla kanału narzędzi logowania agenta, takich jakwhatsapp_login.
Rozwiązywanie problemów
- Uruchom
openclaw status --deep, aby przeprowadzić szeroką kontrolę. - Użyj
openclaw doctor, aby skorzystać z napraw z instrukcjami. openclaw channels statuswyświetla podsumowania oparte wyłącznie na konfiguracji, gdy Gateway jest nieosiągalny. Jeśli dane uwierzytelniające obsługiwanego kanału są skonfigurowane za pomocą SecretRef, lecz niedostępne w bieżącej ścieżce polecenia, konto jest raportowane jako skonfigurowane z uwagami o ograniczonym działaniu, zamiast jako nieskonfigurowane.
Kontrola możliwości
Pobierz wskazówki dotyczące możliwości dostawcy (intencje i zakresy, jeśli są dostępne) oraz statyczną obsługę funkcji:--channeljest opcjonalne; pomiń tę flagę, aby wyświetlić wszystkie kanały (w tym kanały udostępniane przez Pluginy).--accountjest prawidłowe tylko z--channel.--targetprzyjmujechannel:<id>lub nieprzetworzony numeryczny identyfikator kanału i ma zastosowanie wyłącznie do Discord. W przypadku kanałów głosowych Discord kontrola uprawnień oznacza brakujące uprawnieniaViewChannel,Connect,Speak,SendMessagesiReadMessageHistory.- Kontrole są właściwe dla dostawcy: tożsamość bota Discord, intencje i opcjonalne uprawnienia kanału; zakresy bota i użytkownika Slack; flagi bota Telegram i webhook; wersja demona Signal; token aplikacji Microsoft Teams oraz role i zakresy Graph (z adnotacjami, jeśli są znane). Kanały bez kontroli raportują
Probe: unavailable.
Rozpoznawanie nazw jako identyfikatorów
Rozpoznawaj nazwy kanałów i użytkowników jako identyfikatory przy użyciu katalogu dostawcy:- Użyj
--kind user|group|auto, aby wymusić typ celu. - Jeśli wiele wpisów ma tę samą nazwę, rozpoznawanie preferuje aktywne dopasowania.
channels resolvedziała tylko do odczytu. Jeśli wybrane konto jest skonfigurowane za pomocą SecretRef, lecz te dane uwierzytelniające są niedostępne w bieżącej ścieżce polecenia, polecenie zwraca ograniczone, nierozpoznane wyniki z uwagami, zamiast przerywać całe wykonanie.channels resolvenie instaluje Pluginów kanałów. Przed rozpoznawaniem nazw dla kanału z katalogu dostępnego do zainstalowania użyjchannels add --channel <name>.