CLI commands
Kanal
openclaw channels
Kelola akun saluran obrolan dan status runtime-nya di Gateway.
Dokumentasi terkait:
- Panduan saluran: Saluran
- Konfigurasi Gateway: Konfigurasi
Perintah umum
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 hanya menampilkan saluran obrolan: secara bawaan, akun yang telah dikonfigurasi, dengan tag status installed, configured, dan enabled untuk setiap akun (--json untuk keluaran mesin). Gunakan --all untuk turut menampilkan saluran bawaan yang belum memiliki akun terkonfigurasi dan saluran katalog yang dapat dipasang tetapi belum tersedia di disk. Autentikasi penyedia dan penggunaan model dikelola di tempat lain: openclaw models auth list untuk profil autentikasi penyedia, serta openclaw status atau openclaw models list untuk penggunaan/kuota.
Status / kapabilitas / penyelesaian / log
channels status:--channel <name>,--probe,--timeout <ms>(bawaan10000),--jsonchannels capabilities:--channel <name>,--account <id>(memerlukan--channel),--target <dest>(memerlukan--channel),--timeout <ms>(bawaan10000, dibatasi maksimum30000),--jsonchannels resolve <entries...>:--channel <name>,--account <id>,--kind <auto|user|group>(bawaanauto),--jsonchannels logs:--channel <name|all>(bawaanall),--lines <n>(bawaan200),--json
channels status --probe adalah jalur langsung: pada Gateway yang dapat dijangkau, perintah ini menjalankan pemeriksaan probeAccount dan, bila tersedia, auditAccount untuk setiap akun, sehingga keluaran dapat mencakup status transportasi beserta hasil pemeriksaan seperti works, probe failed, audit ok, atau audit failed. Jika Gateway tidak dapat dijangkau, channels status menggunakan ringkasan berbasis konfigurasi saja sebagai pengganti keluaran pemeriksaan langsung.
Jangan gunakan openclaw sessions, sessions.list milik Gateway, atau alat sessions_list milik agen sebagai sinyal kesehatan soket saluran. Permukaan tersebut melaporkan baris percakapan yang tersimpan, bukan status runtime penyedia. Setelah penyedia Discord dimulai ulang, akun yang terhubung tetapi sedang tidak aktif mungkin tetap sehat meskipun tidak ada baris sesi Discord yang muncul hingga peristiwa percakapan masuk atau keluar berikutnya.
Menambahkan / menghapus akun
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 hanya beroperasi pada Plugin saluran yang telah dipasang/dikonfigurasi. Gunakan channels add terlebih dahulu untuk saluran katalog yang dapat dipasang. Tanpa --delete, perintah ini meminta konfirmasi untuk menonaktifkan akun dan mempertahankan konfigurasinya; --delete menghapus entri konfigurasi tanpa meminta konfirmasi.
Untuk Plugin saluran yang didukung runtime, channels remove juga meminta Gateway yang sedang berjalan untuk menghentikan akun yang dipilih sebelum memperbarui konfigurasi, sehingga penonaktifan atau penghapusan akun tidak membiarkan listener lama tetap aktif hingga dimulai ulang.
Flag penambahan noninteraktif yang digunakan bersama oleh semua saluran: --account <id>, --name <name>, --token, --token-file, --bot-token, --app-token, --secret, --secret-file, --password, --cli-path, --url, --base-url, --http-url, --auth-dir, dan --use-env (autentikasi berbasis variabel lingkungan, hanya untuk akun bawaan, jika didukung). Flag khusus saluran meliputi:
| Saluran | Flag |
|---|---|
| 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 |
Jika Plugin saluran perlu dipasang selama perintah penambahan berbasis flag, OpenClaw menggunakan sumber pemasangan bawaan saluran tanpa membuka permintaan pemasangan Plugin interaktif.
Saat Anda menjalankan openclaw channels add tanpa flag, wisaya interaktif dapat meminta:
- ID akun untuk setiap saluran yang dipilih
- nama tampilan opsional untuk akun tersebut
Route these channel accounts to agents now?
Jika Anda mengonfirmasi pengikatan saat itu juga, wisaya akan menanyakan agen yang harus memiliki setiap akun saluran terkonfigurasi dan menulis pengikatan perutean dengan cakupan akun.
Anda juga dapat mengelola aturan perutean yang sama nanti dengan openclaw agents bindings, openclaw agents bind, dan openclaw agents unbind (lihat agen).
Saat Anda menambahkan akun nonbawaan ke saluran yang masih menggunakan pengaturan tingkat atas untuk satu akun, OpenClaw memindahkan nilai tingkat atas tersebut ke peta akun saluran sebelum menulis akun baru. Proses ini menggunakan kembali akun bernama yang sudah ada jika saluran hanya memiliki tepat satu akun, atau jika defaultAccount menunjuk ke salah satunya; jika tidak, nilai tersebut ditempatkan di channels.<channel>.accounts.default.
Perilaku perutean tetap konsisten:
- Pengikatan khusus saluran yang sudah ada (tanpa
accountId) tetap cocok dengan akun bawaan. channels addtidak secara otomatis membuat atau menulis ulang pengikatan dalam mode noninteraktif.- Penyiapan interaktif dapat secara opsional menambahkan pengikatan dengan cakupan akun.
Jika konfigurasi Anda sudah berada dalam keadaan campuran (akun bernama tersedia sementara nilai tingkat atas untuk satu akun masih ditetapkan), jalankan openclaw doctor --fix untuk memindahkan nilai dengan cakupan akun ke akun hasil pemindahan yang dipilih untuk saluran tersebut.
Masuk dan keluar (interaktif)
openclaw channels login --channel whatsappopenclaw channels logout --channel whatsappchannels loginmendukung--account <id>dan--verbose;channels logoutmendukung--account <id>.channels logindanlogoutdapat menyimpulkan saluran jika hanya satu saluran terkonfigurasi yang mendukung tindakan tersebut; jika ada beberapa, gunakan--channel.channels logoutmengutamakan jalur Gateway langsung jika dapat dijangkau, sehingga proses keluar menghentikan listener aktif sebelum menghapus status autentikasi saluran. Jika Gateway lokal tidak dapat dijangkau, perintah ini beralih ke pembersihan autentikasi lokal; dengangateway.mode: "remote", galat Gateway akan menggagalkan perintah.- Setelah berhasil masuk, CLI meminta Gateway lokal yang dapat dijangkau untuk memulai akun; dalam mode jarak jauh, CLI menyimpan autentikasi secara lokal dan memberi tahu bahwa runtime jarak jauh tidak dimulai ulang.
- Jalankan
channels logindari terminal pada hos Gateway.execmilik agen memblokir alur masuk interaktif ini; alat masuk agen bawaan saluran, sepertiwhatsapp_login, harus digunakan dari obrolan jika tersedia.
Pemecahan masalah
- Jalankan
openclaw status --deepuntuk pemeriksaan menyeluruh. - Gunakan
openclaw doctoruntuk perbaikan terpandu. openclaw channels statusberalih ke ringkasan berbasis konfigurasi saja jika Gateway tidak dapat dijangkau. Jika kredensial saluran yang didukung dikonfigurasi melalui SecretRef tetapi tidak tersedia di jalur perintah saat ini, perintah ini melaporkan akun tersebut sebagai telah dikonfigurasi dengan catatan penurunan fungsi, alih-alih menampilkannya sebagai belum dikonfigurasi.
Pemeriksaan kapabilitas
Ambil petunjuk kapabilitas penyedia (intensi/cakupan jika tersedia) beserta dukungan fitur statis:
openclaw channels capabilitiesopenclaw channels capabilities --channel discord --target channel:123Catatan:
--channelbersifat opsional; abaikan untuk mencantumkan setiap saluran (termasuk saluran yang disediakan Plugin).--accounthanya valid jika digunakan bersama--channel.--targetmenerimachannel:<id>atau ID saluran numerik mentah dan hanya berlaku untuk Discord. Untuk saluran suara Discord, pemeriksaan izin menandaiViewChannel,Connect,Speak,SendMessages, danReadMessageHistoryyang tidak tersedia.- Pemeriksaan bersifat khusus penyedia: identitas bot + intensi Discord beserta izin saluran opsional; cakupan bot + pengguna Slack; flag bot + Webhook Telegram; versi daemon Signal; token aplikasi Microsoft Teams + peran/cakupan Graph (diberi anotasi jika diketahui). Saluran tanpa pemeriksaan melaporkan
Probe: unavailable.
Menyelesaikan nama menjadi ID
Selesaikan nama saluran/pengguna menjadi ID menggunakan direktori penyedia:
openclaw channels resolve --channel slack "#general" "@jane"openclaw channels resolve --channel discord "My Server/#support" "@someone"openclaw channels resolve --channel matrix "Project Room"Catatan:
- Gunakan
--kind user|group|autountuk memaksakan jenis target. - Penyelesaian mengutamakan kecocokan aktif jika beberapa entri memiliki nama yang sama.
channels resolvebersifat hanya-baca. Jika akun yang dipilih dikonfigurasi melalui SecretRef tetapi kredensial tersebut tidak tersedia di jalur perintah saat ini, perintah akan mengembalikan hasil yang tidak terselesaikan dengan fungsi terbatas beserta catatan, alih-alih membatalkan seluruh proses.channels resolvetidak memasang Plugin saluran. Gunakanchannels add --channel <name>sebelum menyelesaikan nama untuk saluran katalog yang dapat dipasang.