Tlon (plugin)
Tlon is een gedecentraliseerde messenger gebouwd op Urbit. OpenClaw maakt verbinding met je Urbit-ship en kan reageren op DM’s en groepschatberichten. Groepsantwoorden vereisen standaard een @-vermelding en kunnen verder worden beperkt via allowlists.
Status: ondersteund via plugin. DM’s, groepsvermeldingen, thread-antwoorden, rijke tekstopmaak en afbeeldingsuploads worden ondersteund. Reacties en polls worden nog niet ondersteund.
Plugin vereist
Tlon wordt als plugin geleverd en is niet gebundeld met de kerninstallatie.
Installeren via CLI (npm-register):
openclaw plugins install @openclaw/tlon
Lokale checkout (vanuit een git-repo):
openclaw plugins install ./extensions/tlon
Details: Plugins
Installatie
- Installeer de Tlon-plugin.
- Verzamel je ship-URL en inlogcode.
- Configureer
channels.tlon. - Herstart de gateway.
- Stuur de bot een DM of vermeld hem in een groepskanaal.
Minimale configuratie (enkel account):
{
channels: {
tlon: {
enabled: true,
ship: "~sampel-palnet",
url: "https://your-ship-host",
code: "lidlut-tabwed-pillex-ridrup",
ownerShip: "~your-main-ship", // recommended: your ship, always allowed
},
},
}
Privé-/LAN-ships
Standaard blokkeert OpenClaw privé/interne hostnamen en IP-bereiken voor SSRF-bescherming. Als je ship op een privénetwerk draait (localhost, LAN-IP of interne hostnaam), moet je expliciet opt-in geven:
{
channels: {
tlon: {
url: "http://localhost:8080",
allowPrivateNetwork: true,
},
},
}
Dit geldt voor URL’s zoals:
http://localhost:8080http://192.168.x.x:8080http://my-ship.local:8080
Waarschuwing: Schakel dit alleen in als je je lokale netwerk vertrouwt. Deze instelling schakelt SSRF-beschermingen uit voor verzoeken naar je ship-URL.
Groepskanalen
Auto-discovery is standaard ingeschakeld. Je kunt kanalen ook handmatig vastpinnen:
{
channels: {
tlon: {
groupChannels: ["chat/~host-ship/general", "chat/~host-ship/support"],
},
},
}
Auto-discovery uitschakelen:
{
channels: {
tlon: {
autoDiscoverChannels: false,
},
},
}
Toegangscontrole
DM-allowlist (leeg = geen DM’s toegestaan, gebruik ownerShip voor de goedkeuringsflow):
{
channels: {
tlon: {
dmAllowlist: ["~zod", "~nec"],
},
},
}
Groepsautorisatie (standaard beperkt):
{
channels: {
tlon: {
defaultAuthorizedShips: ["~zod"],
authorization: {
channelRules: {
"chat/~host-ship/general": {
mode: "restricted",
allowedShips: ["~zod", "~nec"],
},
"chat/~host-ship/announcements": {
mode: "open",
},
},
},
},
},
}
Eigenaar en goedkeuringssysteem
Stel een eigenaar-ship in om goedkeuringsverzoeken te ontvangen wanneer ongeautoriseerde gebruikers proberen te interacteren:
{
channels: {
tlon: {
ownerShip: "~your-main-ship",
},
},
}
Het eigenaar-ship is overal automatisch geautoriseerd — DM-uitnodigingen worden automatisch geaccepteerd en kanaalberichten zijn altijd toegestaan. Je hoeft de eigenaar niet toe te voegen aan dmAllowlist of defaultAuthorizedShips.
Wanneer ingesteld, ontvangt de eigenaar DM-meldingen voor:
- DM-verzoeken van ships die niet op de allowlist staan
- Vermeldingen in kanalen zonder autorisatie
- Groepsuitnodigingsverzoeken
Auto-acceptatie-instellingen
DM-uitnodigingen automatisch accepteren (voor ships in dmAllowlist):
{
channels: {
tlon: {
autoAcceptDmInvites: true,
},
},
}
Groepsuitnodigingen automatisch accepteren:
{
channels: {
tlon: {
autoAcceptGroupInvites: true,
},
},
}
Afleveringsdoelen (CLI/cron)
Gebruik deze met openclaw message send of cron-aflevering:
- DM:
~sampel-palnetofdm/~sampel-palnet - Groep:
chat/~host-ship/channelofgroup:~host-ship/channel
Gebundelde skill
De Tlon-plugin bevat een gebundelde skill (@tloncorp/tlon-skill)
die CLI-toegang biedt tot Tlon-bewerkingen:
- Contacten: profielen ophalen/bijwerken, contacten tonen
- Kanalen: tonen, aanmaken, berichten plaatsen, geschiedenis ophalen
- Groepen: tonen, aanmaken, leden beheren
- DM’s: berichten sturen, reageren op berichten
- Reacties: emoji-reacties toevoegen/verwijderen bij berichten en DM’s
- Instellingen: pluginmachtigingen beheren via slash-commando’s
De skill is automatisch beschikbaar zodra de plugin is geinstalleerd.
Mogelijkheden
| Functie | Status |
|---|---|
| Directe berichten | Ondersteund |
| Groepen/kanalen | Ondersteund (standaard mention-gated) |
| Threads | Ondersteund (automatisch antwoord in thread) |
| Rijke tekst | Markdown omgezet naar Tlon-formaat |
| Afbeeldingen | Geupload naar Tlon-opslag |
| Reacties | Via gebundelde skill |
| Polls | Nog niet ondersteund |
| Native commando’s | Ondersteund (standaard alleen eigenaar) |
Probleemoplossing
Voer eerst deze commandoladder uit:
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
Veelvoorkomende fouten:
- DM’s genegeerd: afzender niet in
dmAllowlisten geenownerShipgeconfigureerd voor de goedkeuringsflow. - Groepsberichten genegeerd: kanaal niet ontdekt of afzender niet geautoriseerd.
- Verbindingsfouten: controleer of de ship-URL bereikbaar is; schakel
allowPrivateNetworkin voor lokale ships. - Authenticatiefouten: verifieer of de inlogcode actueel is (codes roteren).
Configuratiereferentie
Volledige configuratie: Configuratie
Provideropties:
channels.tlon.enabled: kanaal in-/uitschakelen bij opstart.channels.tlon.ship: Urbit-shipnaam van de bot (bijv.~sampel-palnet).channels.tlon.url: ship-URL (bijv.https://sampel-palnet.tlon.network).channels.tlon.code: ship-inlogcode.channels.tlon.allowPrivateNetwork: localhost-/LAN-URL’s toestaan (SSRF-bypass).channels.tlon.ownerShip: eigenaar-ship voor het goedkeuringssysteem (altijd geautoriseerd).channels.tlon.dmAllowlist: ships die mogen DM’en (leeg = geen).channels.tlon.autoAcceptDmInvites: DM’s van ships op de allowlist automatisch accepteren.channels.tlon.autoAcceptGroupInvites: alle groepsuitnodigingen automatisch accepteren.channels.tlon.autoDiscoverChannels: groepskanalen automatisch ontdekken (standaard: true).channels.tlon.groupChannels: handmatig vastgepinde kanaalnests.channels.tlon.defaultAuthorizedShips: ships geautoriseerd voor alle kanalen.channels.tlon.authorization.channelRules: per-kanaal autorisatieregels.channels.tlon.showModelSignature: modelnaam toevoegen aan berichten.
Opmerkingen
- Groepsantwoorden vereisen een vermelding (bijv.
~your-bot-ship) om te reageren. - Thread-antwoorden: als het inkomende bericht in een thread is, antwoordt OpenClaw in-thread.
- Rijke tekst: Markdown-opmaak (vet, cursief, code, kopjes, lijsten) wordt omgezet naar het native Tlon-formaat.
- Afbeeldingen: URL’s worden geupload naar Tlon-opslag en ingebed als afbeeldingsblokken.