#room) dan pesan langsung.
Instal Plugin IRC resmi, lalu konfigurasikan di bawah channels.irc.
Mulai cepat
- Instal Plugin:
- Aktifkan konfigurasi IRC di
~/.openclaw/openclaw.json. - Tetapkan setidaknya:
- Mulai/jalankan ulang gateway:
Default keamanan
- IRC menggunakan soket TCP/TLS mentah di luar perutean forward proxy yang dikelola operator OpenClaw. Dalam deployment yang mewajibkan semua egress melalui forward proxy tersebut, tetapkan
channels.irc.enabled=falsekecuali egress IRC langsung disetujui secara eksplisit. channels.irc.dmPolicydefault ke"pairing".channels.irc.groupPolicydefault ke"allowlist".- Dengan
groupPolicy="allowlist", tetapkanchannels.irc.groupsuntuk mendefinisikan channel yang diizinkan. - Gunakan TLS (
channels.irc.tls=true) kecuali Anda sengaja menerima transport plaintext.
Kontrol akses
Ada dua “gerbang” terpisah untuk channel IRC:- Akses channel (
groupPolicy+groups): apakah bot menerima pesan dari sebuah channel sama sekali. - Akses pengirim (
groupAllowFrom/ per-channelgroups["#channel"].allowFrom): siapa yang diizinkan memicu bot di dalam channel tersebut.
- Allowlist DM (akses pengirim DM):
channels.irc.allowFrom - Allowlist pengirim grup (akses pengirim channel):
channels.irc.groupAllowFrom - Kontrol per-channel (aturan channel + pengirim + mention):
channels.irc.groups["#channel"] channels.irc.groupPolicy="open"mengizinkan channel yang tidak dikonfigurasi (tetap dibatasi mention secara default)
nick!user@host).
Pencocokan nick saja dapat berubah dan hanya diaktifkan saat channels.irc.dangerouslyAllowNameMatching: true.
Kesalahan umum: allowFrom untuk DM, bukan channel
Jika Anda melihat log seperti:
irc: drop group sender alice!ident@host (policy=allowlist)
- menetapkan
channels.irc.groupAllowFrom(global untuk semua channel), atau - menetapkan allowlist pengirim per-channel:
channels.irc.groups["#channel"].allowFrom
#tuirc-dev berbicara dengan bot):
Pemicu balasan (mention)
Meskipun sebuah channel diizinkan (melaluigroupPolicy + groups) dan pengirim diizinkan, OpenClaw secara default menggunakan pembatasan mention dalam konteks grup.
Artinya, Anda mungkin melihat log seperti drop channel … (missing-mention) kecuali pesan menyertakan pola mention yang cocok dengan bot.
Agar bot membalas di channel IRC tanpa memerlukan mention, nonaktifkan pembatasan mention untuk channel tersebut:
Catatan keamanan (direkomendasikan untuk channel publik)
Jika Anda mengizinkanallowFrom: ["*"] di channel publik, siapa pun dapat memberi prompt kepada bot.
Untuk mengurangi risiko, batasi tools untuk channel tersebut.
Tools yang sama untuk semua orang di channel
Tools berbeda per pengirim (pemilik mendapatkan kuasa lebih besar)
GunakantoolsBySender untuk menerapkan kebijakan yang lebih ketat pada "*" dan yang lebih longgar pada nick Anda:
- Kunci
toolsBySenderharus menggunakanid:untuk nilai identitas pengirim IRC:id:eigenatauid:eigen!~eigen@174.127.248.171untuk pencocokan yang lebih kuat. - Kunci lama tanpa prefiks masih diterima dan dicocokkan hanya sebagai
id:. - Kebijakan pengirim pertama yang cocok akan berlaku;
"*"adalah fallback wildcard.
NickServ
Untuk mengidentifikasi dengan NickServ setelah tersambung:register setelah nick terdaftar untuk menghindari upaya REGISTER berulang.
Variabel lingkungan
Akun default mendukung:IRC_HOSTIRC_PORTIRC_TLSIRC_NICKIRC_USERNAMEIRC_REALNAMEIRC_PASSWORDIRC_CHANNELS(dipisahkan koma)IRC_NICKSERV_PASSWORDIRC_NICKSERV_REGISTER_EMAIL
IRC_HOST tidak dapat ditetapkan dari .env workspace; lihat File .env workspace.
Pemecahan masalah
- Jika bot tersambung tetapi tidak pernah membalas di channel, verifikasi
channels.irc.groupsdan apakah pembatasan mention menjatuhkan pesan (missing-mention). Jika Anda ingin bot membalas tanpa ping, tetapkanrequireMention:falseuntuk channel tersebut. - Jika login gagal, verifikasi ketersediaan nick dan kata sandi server.
- Jika TLS gagal pada jaringan kustom, verifikasi host/port dan penyiapan sertifikat.
Terkait
- Ikhtisar Channel — semua channel yang didukung
- Pairing — autentikasi DM dan alur pairing
- Grup — perilaku chat grup dan pembatasan mention
- Perutean Channel — perutean sesi untuk pesan
- Keamanan — model akses dan hardening