Tlon (plugin)
Tlon is a decentralized messenger built on Urbit. Mayros connects to your Urbit ship and can respond to DMs and group chat messages. Group replies require an @ mention by default and can be further restricted via allowlists.
Status: supported via plugin. DMs, group mentions, thread replies, and text-only media fallback (URL appended to caption). Reactions, polls, and native media uploads are not supported.
Plugin required
Tlon ships as a plugin and is not bundled with the core install.
Install via CLI (npm registry):
bashmayros plugins install @apilium/mayros-tlon
Local checkout (when running from a git repo):
bashmayros plugins install ./extensions/tlon
Details: Plugins
Setup
- Install the Tlon plugin.
- Gather your ship URL and login code.
- Configure
channels.tlon. - Restart the gateway.
- DM the bot or mention it in a group channel.
Minimal config (single account):
json5{ channels: { tlon: { enabled: true, ship: "~sampel-palnet", url: "https://your-ship-host", code: "lidlut-tabwed-pillex-ridrup", }, }, }
Private/LAN ship URLs (advanced):
By default, Mayros blocks private/internal hostnames and IP ranges for this plugin (SSRF hardening).
If your ship URL is on a private network (for example http://192.168.1.50:8080 or http://localhost:8080),
you must explicitly opt in:
json5{ channels: { tlon: { allowPrivateNetwork: true, }, }, }
Group channels
Auto-discovery is enabled by default. You can also pin channels manually:
json5{ channels: { tlon: { groupChannels: ["chat/~host-ship/general", "chat/~host-ship/support"], }, }, }
Disable auto-discovery:
json5{ channels: { tlon: { autoDiscoverChannels: false, }, }, }
Access control
DM allowlist (empty = allow all):
json5{ channels: { tlon: { dmAllowlist: ["~zod", "~nec"], }, }, }
Group authorization (restricted by default):
json5{ channels: { tlon: { defaultAuthorizedShips: ["~zod"], authorization: { channelRules: { "chat/~host-ship/general": { mode: "restricted", allowedShips: ["~zod", "~nec"], }, "chat/~host-ship/announcements": { mode: "open", }, }, }, }, }, }
Delivery targets (CLI/cron)
Use these with mayros message send or cron delivery:
- DM:
~sampel-palnetordm/~sampel-palnet - Group:
chat/~host-ship/channelorgroup:~host-ship/channel
Notes
- Group replies require a mention (e.g.
~your-bot-ship) to respond. - Thread replies: if the inbound message is in a thread, Mayros replies in-thread.
- Media:
sendMediafalls back to text + URL (no native upload).