Tlon (Plugin)
Tlon ist ein dezentraler Messenger, der auf Urbit aufbaut. OpenClaw verbindet sich mit deinem Urbit-Ship und kann auf DMs und Gruppenchat-Nachrichten antworten. Gruppenantworten erfordern standardmäßig eine @-Erwähnung und können über Allowlists weiter eingeschränkt werden.
Status: Unterstützt via Plugin. DMs, Gruppen-Mentions, Thread-Antworten, Rich-Text-Formatierung und Bild-Uploads werden unterstützt. Reaktionen und Umfragen werden noch nicht unterstützt.
Plugin erforderlich
Tlon wird als Plugin ausgeliefert und ist nicht in der Kerninstallation enthalten.
Installation über CLI (npm-Registry):
openclaw plugins install @openclaw/tlon
Lokaler Checkout (wenn aus einem Git-Repo ausgeführt):
openclaw plugins install ./extensions/tlon
Details: Plugins
Einrichtung
- Installiere das Tlon-Plugin.
- Sammle deine Ship-URL und den Login-Code.
- Konfiguriere
channels.tlon. - Starte das Gateway neu.
- Sende dem Bot eine DM oder erwähne ihn in einem Gruppenkanal.
Minimale Konfiguration (Einzelkonto):
{
channels: {
tlon: {
enabled: true,
ship: "~sampel-palnet",
url: "https://your-ship-host",
code: "lidlut-tabwed-pillex-ridrup",
ownerShip: "~your-main-ship", // empfohlen: dein Ship, immer erlaubt
},
},
}
Private/LAN-Ships
Standardmäßig blockiert OpenClaw private/interne Hostnamen und IP-Bereiche zum SSRF-Schutz. Wenn dein Ship in einem privaten Netzwerk läuft (localhost, LAN-IP oder interner Hostname), musst du ausdrücklich zustimmen:
{
channels: {
tlon: {
url: "http://localhost:8080",
allowPrivateNetwork: true,
},
},
}
Dies gilt für URLs wie:
http://localhost:8080http://192.168.x.x:8080http://my-ship.local:8080
Warnung: Aktiviere dies nur, wenn du deinem lokalen Netzwerk vertraust. Diese Einstellung deaktiviert den SSRF-Schutz für Anfragen an deine Ship-URL.
Gruppenkanäle
Auto-Discovery ist standardmäßig aktiviert. Du kannst Kanäle auch manuell festlegen:
{
channels: {
tlon: {
groupChannels: ["chat/~host-ship/general", "chat/~host-ship/support"],
},
},
}
Auto-Discovery deaktivieren:
{
channels: {
tlon: {
autoDiscoverChannels: false,
},
},
}
Zugriffssteuerung
DM-Allowlist (leer = keine DMs erlaubt, verwende ownerShip für den Genehmigungsfluss):
{
channels: {
tlon: {
dmAllowlist: ["~zod", "~nec"],
},
},
}
Gruppen-Autorisierung (standardmäßig eingeschränkt):
{
channels: {
tlon: {
defaultAuthorizedShips: ["~zod"],
authorization: {
channelRules: {
"chat/~host-ship/general": {
mode: "restricted",
allowedShips: ["~zod", "~nec"],
},
"chat/~host-ship/announcements": {
mode: "open",
},
},
},
},
},
}
Besitzer und Genehmigungssystem
Setze ein Besitzer-Ship, um Genehmigungsanfragen zu erhalten, wenn unautorisierte Benutzer interagieren:
{
channels: {
tlon: {
ownerShip: "~your-main-ship",
},
},
}
Das Besitzer-Ship ist überall automatisch autorisiert — DM-Einladungen werden automatisch akzeptiert und Kanalnachrichten sind immer erlaubt. Du musst den Besitzer nicht zur dmAllowlist oder zu defaultAuthorizedShips hinzufügen.
Wenn gesetzt, erhält der Besitzer DM-Benachrichtigungen für:
- DM-Anfragen von Ships, die nicht in der Allowlist stehen
- Erwähnungen in Kanälen ohne Autorisierung
- Gruppeneinladungs-Anfragen
Automatische Annahme-Einstellungen
DM-Einladungen automatisch annehmen (für Ships in der dmAllowlist):
{
channels: {
tlon: {
autoAcceptDmInvites: true,
},
},
}
Gruppeneinladungen automatisch annehmen:
{
channels: {
tlon: {
autoAcceptGroupInvites: true,
},
},
}
Zustellziele (CLI/Cron)
Verwende diese mit openclaw message send oder Cron-Zustellung:
- DM:
~sampel-palnetoderdm/~sampel-palnet - Gruppe:
chat/~host-ship/channelodergroup:~host-ship/channel
Mitgelieferter Skill
Das Tlon-Plugin enthält einen mitgelieferten Skill (@tloncorp/tlon-skill), der CLI-Zugriff auf Tlon-Operationen bietet:
- Kontakte: Profile abrufen/aktualisieren, Kontakte auflisten
- Kanäle: Auflisten, erstellen, Nachrichten senden, Verlauf abrufen
- Gruppen: Auflisten, erstellen, Mitglieder verwalten
- DMs: Nachrichten senden, auf Nachrichten reagieren
- Reaktionen: Emoji-Reaktionen zu Beiträgen und DMs hinzufügen/entfernen
- Einstellungen: Plugin-Berechtigungen über Slash-Befehle verwalten
Der Skill ist automatisch verfügbar, wenn das Plugin installiert ist.
Fähigkeiten
| Feature | Status |
|---|---|
| Direktnachrichten | Unterstützt |
| Gruppen/Kanäle | Unterstützt (standardmäßig Mention-gated) |
| Threads | Unterstützt (automatische Antwort im Thread) |
| Rich Text | Markdown wird in Tlon-Format konvertiert |
| Bilder | Upload in Tlon-Speicher |
| Reaktionen | Via mitgeliefertem Skill |
| Umfragen | Noch nicht unterstützt |
| Native Befehle | Unterstützt (standardmäßig nur Besitzer) |
Fehlerbehebung
Führe zuerst diese Befehle aus:
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
Häufige Fehler:
- DMs werden ignoriert: Absender nicht in
dmAllowlistund keinownerShipfür den Genehmigungsfluss konfiguriert. - Gruppennachrichten werden ignoriert: Kanal nicht entdeckt oder Absender nicht autorisiert.
- Verbindungsfehler: Prüfe, ob die Ship-URL erreichbar ist; aktiviere
allowPrivateNetworkfür lokale Ships. - Authentifizierungsfehler: Überprüfe, ob der Login-Code aktuell ist (Codes rotieren).
Konfigurationsreferenz
Vollständige Konfiguration: Configuration
Provider-Optionen:
channels.tlon.enabled: Kanal-Start aktivieren/deaktivieren.channels.tlon.ship: Bot-Urbit-Ship-Name (z. B.~sampel-palnet).channels.tlon.url: Ship-URL (z. B.https://sampel-palnet.tlon.network).channels.tlon.code: Ship-Login-Code.channels.tlon.allowPrivateNetwork: Localhost/LAN-URLs erlauben (SSRF-Bypass).channels.tlon.ownerShip: Besitzer-Ship für das Genehmigungssystem (immer autorisiert).channels.tlon.dmAllowlist: Ships, die DMs senden dürfen (leer = keine).channels.tlon.autoAcceptDmInvites: DMs von Allowlist-Ships automatisch annehmen.channels.tlon.autoAcceptGroupInvites: Alle Gruppeneinladungen automatisch annehmen.channels.tlon.autoDiscoverChannels: Gruppenkanäle automatisch entdecken (Standard: true).channels.tlon.groupChannels: Manuell festgelegte Kanal-Nests.channels.tlon.defaultAuthorizedShips: Ships, die für alle Kanäle autorisiert sind.channels.tlon.authorization.channelRules: Pro-Kanal-Autorisierungsregeln.channels.tlon.showModelSignature: Modellnamen an Nachrichten anhängen.
Hinweise
- Gruppenantworten erfordern eine Erwähnung (z. B.
~your-bot-ship). - Thread-Antworten: Wenn die eingehende Nachricht in einem Thread ist, antwortet OpenClaw im Thread.
- Rich Text: Markdown-Formatierung (fett, kursiv, Code, Überschriften, Listen) wird in Tlons natives Format konvertiert.
- Bilder: URLs werden in den Tlon-Speicher hochgeladen und als Bildblöcke eingebettet.