Tlon(插件)
Tlon 是一个基于 Urbit 构建的去中心化通讯工具。OpenClaw 连接到您的 Urbit ship(飞船),并可以回复私信和群聊消息。默认情况下,群组回复需要 @ 提及,并且可以通过允许列表进行进一步限制。 状态:通过插件支持。支持私信、群组提及、主题回复、富文本格式和图片上传。暂不支持表情回应(Reactions)和投票。所需插件
Tlon 作为插件提供,不包含在核心安装中。 通过 CLI 安装(npm 注册表):设置
- 安装 Tlon 插件。
- 准备好您的 ship URL 和登录代码。
- 配置
channels.tlon。 - 重启网关。
- 向机器人发送私信或在群组频道中提及它。
私有/LAN Ships
默认情况下,为了防止 SSRF 攻击,OpenClaw 会阻止私有/内部主机名和 IP 范围。 如果您的 ship 运行在私有网络(localhost、LAN IP 或内部主机名)上, 您必须明确选择加入:http://localhost:8080http://192.168.x.x:8080http://my-ship.local:8080
群组频道
默认启用自动发现。您也可以手动固定频道:访问控制
私信 允许列表(空 = 不允许 私信,使用ownerShip 进行审批流程):
所有者和审批系统
设置一个所有者 ship,以便在未授权用户尝试交互时接收审批请求:dmAllowlist 或
defaultAuthorizedShips 中。
设置后,所有者将收到以下 私信 通知:
- 来自不在允许列表中的 ship 的私信请求
- 未经授权的频道提及
- 群组邀请请求
自动接受设置
自动接受私信邀请(针对 dmAllowlist 中的船只):投递目标 (CLI/cron)
将这些与openclaw message send 或 cron 传递一起使用:
- 私信:
~sampel-palnet或dm/~sampel-palnet - 群组:
chat/~host-ship/channel或group:~host-ship/channel
捆绑技能
Tlon 插件包含一个内置技能(@tloncorp/tlon-skill),提供对 Tlon 操作的 CLI 访问:
- 联系人 (Contacts):获取/更新个人资料,列出联系人
- 频道 (Channels):列出、创建、发送消息、获取历史记录
- 群组 (Groups):列出、创建、管理成员
- 私信 (私信):发送消息,对消息做出反应
- 回应 (Reactions):对帖子 and 添加/移除表情符号回应
- 设置 (Settings):通过斜杠命令管理插件权限
功能
| 功能 | 状态 |
|---|---|
| 私信 | ✅ 已支持 |
| 群组/频道 | ✅ 已支持(默认通过提及触发) |
| 话题串 | ✅ 已支持(在话题串中自动回复) |
| 富文本 | ✅ Markdown 转换为 Tlon 格式 |
| 图片 | ✅ 已上传到 Tlon 存储 |
| 表情反应 | ✅ 通过内置技能 |
| 投票 | ❌ 尚不支持 |
| 原生指令 | ✅ 已支持(默认仅所有者可用) |
故障排查
首先运行此步骤:- 私信被忽略:发送者不在
dmAllowlist中且未配置ownerShip用于审批流程。 - 群组消息被忽略:频道未发现或发送者未获授权。
- 连接错误:检查 ship URL 是否可达;为本地 ship 启用
allowPrivateNetwork。 - 认证错误:验证登录码是否为最新(登录码会轮换)。
配置参考
完整配置:Configuration 提供者选项:channels.tlon.enabled:启用/禁用频道启动。channels.tlon.ship:机器人的 Urbit ship 名称(例如~sampel-palnet)。channels.tlon.url:ship URL(例如https://sampel-palnet.tlon.network)。channels.tlon.code:ship 登录码。channels.tlon.allowPrivateNetwork:允许 localhost/LAN URL(SSRF 绕过)。channels.tlon.ownerShip:审批系统的所有者 ship(始终获授权)。channels.tlon.dmAllowlist:允许发送私信的 ship(空=无)。channels.tlon.autoAcceptDmInvites:自动接受来自白名单 ship 的私信。channels.tlon.autoAcceptGroupInvites:自动接受所有群组邀请。channels.tlon.autoDiscoverChannels:自动发现群组频道(默认:true)。channels.tlon.groupChannels:手动固定的频道巢。channels.tlon.defaultAuthorizedShips:针对所有频道获授权的 ship。channels.tlon.authorization.channelRules:每个渠道的认证规则。channels.tlon.showModelSignature:将模型名称附加到消息。
注意
- 群组回复需要提及(例如
~your-bot-ship)才能响应。 - 帖子回复:如果传入消息位于帖子串中,OpenClaw 将在串内回复。
- 富文本:Markdown 格式(粗体、斜体、代码、标题、列表)将转换为 Tlon 的原生格式。
- 图片:URL 将上传到 Tlon 存储并作为图片块嵌入。
本页面源自 openclaw/openclaw,由 BeaversLab 翻译,遵循 MIT 协议 发布。