Usa IRC quando vuoi OpenClaw nei canali classici (Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
#room) e nei messaggi diretti.
IRC viene distribuito come Plugin incluso, ma è configurato nella configurazione principale sotto channels.irc.
Avvio rapido
- Abilita la configurazione IRC in
~/.openclaw/openclaw.json. - Imposta almeno:
- Avvia/riavvia il gateway:
Impostazioni di sicurezza predefinite
- IRC usa socket TCP/TLS grezzi al di fuori dell’instradamento tramite proxy forward gestito dall’operatore OpenClaw. Nelle distribuzioni che richiedono tutto il traffico in uscita attraverso quel proxy forward, imposta
channels.irc.enabled=falsea meno che l’uscita IRC diretta non sia approvata esplicitamente. channels.irc.dmPolicyha come valore predefinito"pairing".channels.irc.groupPolicyha come valore predefinito"allowlist".- Con
groupPolicy="allowlist", impostachannels.irc.groupsper definire i canali consentiti. - Usa TLS (
channels.irc.tls=true) a meno che tu non accetti intenzionalmente il trasporto in chiaro.
Controllo degli accessi
Ci sono due “gate” separati per i canali IRC:- Accesso al canale (
groupPolicy+groups): se il bot accetta messaggi da un canale. - Accesso del mittente (
groupAllowFrom/groups["#channel"].allowFromper canale): chi è autorizzato ad attivare il bot dentro quel canale.
- Allowlist DM (accesso del mittente DM):
channels.irc.allowFrom - Allowlist dei mittenti di gruppo (accesso del mittente nel canale):
channels.irc.groupAllowFrom - Controlli per canale (regole di canale + mittente + menzione):
channels.irc.groups["#channel"] channels.irc.groupPolicy="open"consente canali non configurati (ancora soggetti al gate di menzione per impostazione predefinita)
nick!user@host).
La corrispondenza solo per nick è mutabile ed è abilitata solo quando channels.irc.dangerouslyAllowNameMatching: true.
Errore comune: allowFrom è per i DM, non per i canali
Se vedi log come:
irc: drop group sender alice!ident@host (policy=allowlist)
- impostando
channels.irc.groupAllowFrom(globale per tutti i canali), oppure - impostando allowlist dei mittenti per canale:
channels.irc.groups["#channel"].allowFrom
#tuirc-dev di parlare con il bot):
Attivazione delle risposte (menzioni)
Anche se un canale è consentito (tramitegroupPolicy + groups) e il mittente è autorizzato, OpenClaw applica per impostazione predefinita il gate di menzione nei contesti di gruppo.
Questo significa che potresti vedere log come drop channel … (missing-mention) a meno che il messaggio includa un pattern di menzione che corrisponde al bot.
Per fare in modo che il bot risponda in un canale IRC senza richiedere una menzione, disabilita il gate di menzione per quel canale:
Nota di sicurezza (consigliata per canali pubblici)
Se consentiallowFrom: ["*"] in un canale pubblico, chiunque può inviare prompt al bot.
Per ridurre il rischio, limita gli strumenti per quel canale.
Stessi strumenti per tutti nel canale
Strumenti diversi per mittente (il proprietario ottiene più potere)
UsatoolsBySender per applicare una policy più restrittiva a "*" e una più permissiva al tuo nick:
- Le chiavi
toolsBySenderdevono usareid:per i valori di identità del mittente IRC:id:eigenoid:eigen!~eigen@174.127.248.171per una corrispondenza più forte. - Le chiavi legacy senza prefisso sono ancora accettate e abbinate solo come
id:. - Vince la prima policy del mittente corrispondente;
"*"è il fallback wildcard.
NickServ
Per identificarti con NickServ dopo la connessione:register dopo che il nick è stato registrato per evitare tentativi REGISTER ripetuti.
Variabili d’ambiente
L’account predefinito supporta:IRC_HOSTIRC_PORTIRC_TLSIRC_NICKIRC_USERNAMEIRC_REALNAMEIRC_PASSWORDIRC_CHANNELS(separati da virgole)IRC_NICKSERV_PASSWORDIRC_NICKSERV_REGISTER_EMAIL
IRC_HOST non può essere impostato da un .env di workspace; consulta file .env di workspace.
Risoluzione dei problemi
- Se il bot si connette ma non risponde mai nei canali, verifica
channels.irc.groupse se il gate di menzione sta scartando i messaggi (missing-mention). Se vuoi che risponda senza ping, impostarequireMention:falseper il canale. - Se l’accesso fallisce, verifica la disponibilità del nick e la password del server.
- Se TLS fallisce su una rete personalizzata, verifica host/porta e la configurazione del certificato.
Correlati
- Panoramica dei canali — tutti i canali supportati
- Pairing — autenticazione DM e flusso di pairing
- Groups — comportamento delle chat di gruppo e gate di menzione
- Routing dei canali — routing delle sessioni per i messaggi
- Sicurezza — modello di accesso e hardening