#room) ve doğrudan iletilerde OpenClaw kullanmak istediğinizde IRC kullanın.
Resmi IRC Plugin’ini yükleyin, ardından channels.irc altında yapılandırın.
Hızlı başlangıç
- Plugin’i yükleyin:
~/.openclaw/openclaw.jsoniçinde IRC yapılandırmasını etkinleştirin.- En azından şunları ayarlayın:
- Gateway’i başlatın/yeniden başlatın:
Güvenlik varsayılanları
- IRC, OpenClaw operatörü tarafından yönetilen ileri proxy yönlendirmesi dışında ham TCP/TLS soketleri kullanır. Tüm çıkış trafiğinin bu ileri proxy üzerinden geçmesini gerektiren dağıtımlarda, doğrudan IRC çıkışı açıkça onaylanmadıkça
channels.irc.enabled=falseayarlayın. channels.irc.dmPolicyvarsayılanı"pairing"değeridir.channels.irc.groupPolicyvarsayılanı"allowlist"değeridir.groupPolicy="allowlist"ile izin verilen kanalları tanımlamak içinchannels.irc.groupsayarlayın.- Düz metin aktarımı bilerek kabul etmiyorsanız TLS (
channels.irc.tls=true) kullanın.
Erişim denetimi
IRC kanalları için iki ayrı “geçit” vardır:- Kanal erişimi (
groupPolicy+groups): botun bir kanaldan gelen iletileri hiç kabul edip etmeyeceği. - Gönderen erişimi (
groupAllowFrom/ kanal başınagroups["#channel"].allowFrom): o kanalda botu tetiklemesine kimin izin verildiği.
- DM izin listesi (DM gönderen erişimi):
channels.irc.allowFrom - Grup gönderen izin listesi (kanal gönderen erişimi):
channels.irc.groupAllowFrom - Kanal başına denetimler (kanal + gönderen + bahsetme kuralları):
channels.irc.groups["#channel"] channels.irc.groupPolicy="open"yapılandırılmamış kanallara izin verir (varsayılan olarak yine de bahsetme koşulludur)
nick!user@host) kullanmalıdır.
Yalın nick eşleştirmesi değiştirilebilir durumdadır ve yalnızca channels.irc.dangerouslyAllowNameMatching: true olduğunda etkinleştirilir.
Yaygın tuzak: allowFrom kanallar için değil, DM’ler içindir
Şuna benzer günlükler görürseniz:
irc: drop group sender alice!ident@host (policy=allowlist)
channels.irc.groupAllowFromayarlayın (tüm kanallar için global), veya- kanal başına gönderen izin listelerini ayarlayın:
channels.irc.groups["#channel"].allowFrom
#tuirc-dev içindeki herkesin botla konuşmasına izin ver):
Yanıt tetikleme (bahsetmeler)
Bir kanala izin verilmiş olsa (groupPolicy + groups aracılığıyla) ve gönderen izinli olsa bile OpenClaw grup bağlamlarında varsayılan olarak bahsetme koşulu uygular.
Bu, ileti botla eşleşen bir bahsetme kalıbı içermedikçe drop channel … (missing-mention) gibi günlükler görebileceğiniz anlamına gelir.
Botun bir IRC kanalında bahsetme gerekmeksizin yanıt vermesini sağlamak için o kanalda bahsetme koşulunu devre dışı bırakın:
Güvenlik notu (genel kanallar için önerilir)
Genel bir kanaldaallowFrom: ["*"] izni verirseniz herkes bota istem gönderebilir.
Riski azaltmak için o kanaldaki araçları kısıtlayın.
Kanaldaki herkes için aynı araçlar
Gönderene göre farklı araçlar (sahip daha fazla yetki alır)
"*" için daha sıkı, nick’iniz için daha gevşek bir politika uygulamak üzere toolsBySender kullanın:
toolsBySenderanahtarları IRC gönderen kimliği değerleri içinid:kullanmalıdır: daha güçlü eşleştirme içinid:eigenveyaid:eigen!~eigen@174.127.248.171.- Eski ön eksiz anahtarlar hâlâ kabul edilir ve yalnızca
id:olarak eşleştirilir. - İlk eşleşen gönderen politikası kazanır;
"*"joker yedektir.
NickServ
Bağlandıktan sonra NickServ ile kimlik doğrulamak için:register ayarını devre dışı bırakın.
Ortam değişkenleri
Varsayılan hesap şunları destekler:IRC_HOSTIRC_PORTIRC_TLSIRC_NICKIRC_USERNAMEIRC_REALNAMEIRC_PASSWORDIRC_CHANNELS(virgülle ayrılmış)IRC_NICKSERV_PASSWORDIRC_NICKSERV_REGISTER_EMAIL
IRC_HOST bir çalışma alanı .env dosyasından ayarlanamaz; bkz. Çalışma alanı .env dosyaları.
Sorun giderme
- Bot bağlanıyor ancak kanallarda hiç yanıt vermiyorsa
channels.irc.groupsayarını ve bahsetme koşulunun iletileri düşürüp düşürmediğini (missing-mention) doğrulayın. Ping olmadan yanıt vermesini istiyorsanız kanal içinrequireMention:falseayarlayın. - Oturum açma başarısız olursa nick kullanılabilirliğini ve sunucu parolasını doğrulayın.
- Özel bir ağda TLS başarısız olursa host/port ve sertifika kurulumunu doğrulayın.
İlgili
- Kanallara Genel Bakış — desteklenen tüm kanallar
- Eşleştirme — DM kimlik doğrulaması ve eşleştirme akışı
- Gruplar — grup sohbeti davranışı ve bahsetme koşulu
- Kanal Yönlendirme — iletiler için oturum yönlendirmesi
- Güvenlik — erişim modeli ve sıkılaştırma