Zum Inhalt springen

OpenClaw IRC-Integration: In 3 Minuten einrichten

Kennst du das? Du hast ein cooles Tool gebaut, aber deine Community hängt noch in den guten alten IRC-Channels ab. Anstatt sie zum Wechseln zu zwingen, bringst du die KI einfach dorthin, wo sie bereits sind.

IRC ist ein Klassiker, und mit OpenClaw kannst du deine Bots direkt in #room-Channels oder DMs integrieren. IRC wird als Extension-Plugin mitgeliefert, aber du konfigurierst alles zentral in der Hauptkonfiguration unter channels.irc.

  1. Aktiviere die IRC-Konfiguration in ~/.openclaw/openclaw.json.
  2. Setze mindestens diese Werte:
{
channels: {
irc: {
enabled: true,
host: "irc.libera.chat",
port: 6697,
tls: true,
nick: "openclaw-bot",
channels: ["#openclaw"],
},
},
}
  1. Starte das Gateway neu:
Terminal-Fenster
openclaw gateway run
  • channels.irc.dmPolicy ist standardmäßig auf "pairing" gesetzt.
  • channels.irc.groupPolicy nutzt standardmäßig "allowlist".
  • Wenn groupPolicy="allowlist" aktiv ist, musst du channels.irc.groups nutzen, um erlaubte Channels zu definieren.
  • Nutze TLS (channels.irc.tls=true), außer du akzeptierst bewusst eine unverschlüsselte Übertragung.

Es gibt zwei getrennte “Gates” für IRC-Channels:

  1. Channel-Zugriff (groupPolicy + groups): Bestimmt, ob der Bot überhaupt Nachrichten aus einem Channel akzeptiert.
  2. Sender-Zugriff (groupAllowFrom / pro Channel groups["#channel"].allowFrom): Bestimmt, wer den Bot innerhalb dieses Channels triggern darf.

Konfigurations-Keys:

  • DM-Allowlist (DM-Sender-Zugriff): channels.irc.allowFrom
  • Group-Sender-Allowlist (Channel-Sender-Zugriff): channels.irc.groupAllowFrom
  • Pro-Channel-Steuerung (Channel + Sender + Mention-Regeln): channels.irc.groups["#channel"]
  • channels.irc.groupPolicy="open" erlaubt unkonfigurierte Channels (standardmäßig trotzdem durch Mentions geschützt)

Allowlist-Einträge sollten stabile Sender-Identitäten nutzen (nick!user@host). Ein reiner Nick-Abgleich ist unsicher und nur aktiv, wenn channels.irc.dangerouslyAllowNameMatching: true gesetzt ist.

Häufiger Fehler: allowFrom ist für DMs, nicht für Channels

Abschnitt betitelt „Häufiger Fehler: allowFrom ist für DMs, nicht für Channels“

Wenn du Logs wie diesen siehst:

  • irc: drop group sender alice!ident@host (policy=allowlist)

… bedeutet das, dass der Sender für Group/Channel-Nachrichten nicht zugelassen war. Du kannst das so beheben:

  • Setze channels.irc.groupAllowFrom (global für alle Channels), oder
  • Setze Sender-Allowlists pro Channel: channels.irc.groups["#channel"].allowFrom

Beispiel (erlaubt jedem in #tuirc-dev, mit dem Bot zu schreiben):

{
channels: {
irc: {
groupPolicy: "allowlist",
groups: {
"#tuirc-dev": { allowFrom: ["*"] },
},
},
},
}

Selbst wenn ein Channel und der Sender erlaubt sind, nutzt OpenClaw in Gruppen standardmäßig Mention-Gating.

Das bedeutet, du siehst eventuell Logs wie drop channel … (missing-mention), außer die Nachricht enthält eine Mention, die auf den Bot passt.

Damit der Bot in einem IRC-Channel antwortet, ohne dass er erwähnt werden muss, deaktiviere das Mention-Gating für diesen Channel:

{
channels: {
irc: {
groupPolicy: "allowlist",
groups: {
"#tuirc-dev": {
requireMention: false,
allowFrom: ["*"],
},
},
},
},
}

Oder um alle IRC-Channels zu erlauben (ohne Allowlist pro Channel) und trotzdem ohne Mentions zu antworten:

{
channels: {
irc: {
groupPolicy: "open",
groups: {
"*": { requireMention: false, allowFrom: ["*"] },
},
},
},
}

Sicherheitshinweis (empfohlen für öffentliche Channels)

Abschnitt betitelt „Sicherheitshinweis (empfohlen für öffentliche Channels)“

Wenn du allowFrom: ["*"] in einem öffentlichen Channel erlaubst, kann jeder den Bot nutzen. Um das Risiko zu minimieren, solltest du die Tools für diesen Channel einschränken.

{
channels: {
irc: {
groups: {
"#tuirc-dev": {
allowFrom: ["*"],
tools: {
deny: ["group:runtime", "group:fs", "gateway", "nodes", "cron", "browser"],
},
},
},
},
},
}

Unterschiedliche Tools pro Sender (Besitzer bekommt mehr Rechte)

Abschnitt betitelt „Unterschiedliche Tools pro Sender (Besitzer bekommt mehr Rechte)“

Nutze toolsBySender, um eine striktere Policy für "*" und eine lockerere für deinen eigenen Nick anzuwenden:

{
channels: {
irc: {
groups: {
"#tuirc-dev": {
allowFrom: ["*"],
toolsBySender: {
"*": {
deny: ["group:runtime", "group:fs", "gateway", "nodes", "cron", "browser"],
},
"id:eigen": {
deny: ["gateway", "nodes", "cron"],
},
},
},
},
},
},
}

Hinweise:

  • toolsBySender Keys sollten id: für IRC-Identitäten nutzen: id:eigen oder id:eigen!~eigen@174.127.248.171 für einen genaueren Abgleich.
  • Alte Keys ohne Präfix werden weiterhin akzeptiert und wie id: behandelt.
  • Die erste passende Sender-Policy gewinnt; "*" dient als Wildcard-Fallback.

Mehr Details zum Unterschied zwischen Group-Access und Mention-Gating findest du unter: /channels/groups.

Um dich nach dem Verbinden bei NickServ zu identifizieren:

{
channels: {
irc: {
nickserv: {
enabled: true,
service: "NickServ",
password: "your-nickserv-password",
},
},
},
}

Optionale einmalige Registrierung beim Verbinden:

{
channels: {
irc: {
nickserv: {
register: true,
registerEmail: "bot@example.com",
},
},
},
}

Deaktiviere register, sobald der Nick registriert ist, um wiederholte REGISTER-Versuche zu vermeiden.

Der Standard-Account unterstützt:

  • IRC_HOST
  • IRC_PORT
  • IRC_TLS
  • IRC_NICK
  • IRC_USERNAME
  • IRC_REALNAME
  • IRC_PASSWORD
  • IRC_CHANNELS (kommagetrennt)
  • IRC_NICKSERV_PASSWORD
  • IRC_NICKSERV_REGISTER_EMAIL
  • Wenn der Bot verbindet, aber nie in Channels antwortet, prüfe channels.irc.groups und ob das Mention-Gating Nachrichten verwirft (missing-mention). Wenn er ohne Pings antworten soll, setze requireMention:false.
  • Falls der Login fehlschlägt, prüfe die Verfügbarkeit des Nicks und das Server-Passwort.
  • Wenn TLS in einem eigenen Netzwerk fehlschlägt, kontrolliere Host/Port und das Zertifikats-Setup.

Du hast IRC im Griff? Dann schau dir an, wie du Pairing für sichere DMs einrichtest oder wie das Channel Routing funktioniert.

AI Setup Assistant

OpenClaw

OpenClaw Expert

Noch festgefahren?

Wenn diese Seite nicht hilft, frage OpenClaw Expert nach Schritt-fuer-Schritt-Loesungen.