Skip to main content
Tlon は Urbit 上に構築された分散型メッセンジャーです。OpenClaw はお使いの Urbit ship に接続し、DM やグループチャットのメッセージに応答できます。グループでの返信には、デフォルトで @メンションが必要ですが、許可リストによってさらに制限することも可能です。 ステータス: プラグインによりサポートされています。DM、グループメンション、スレッドへの返信、リッチテキスト形式、および画像のアップロードがサポートされています。リアクションと投票はまだサポートされていません。

プラグインが必要

Tlon はプラグインとして提供されており、コアインストールには同梱されていません。 CLI (npm レジストリ) 経由でインストールします:
ローカルチェックアウト (git リポジトリから実行する場合):
詳細: プラグイン

セットアップ

  1. Tlon プラグインをインストールします。
  2. ship の URL とログインコードを用意します。
  3. channels.tlon を構成します。
  4. ゲートウェイを再起動します。
  5. ボットに DM を送信するか、グループチャネルでメンションします。
最小限の構成 (単一アカウント):

プライベート / LAN 内の ship

デフォルトでは、OpenClaw は SSRF 保護のため、プライベート/内部ホスト名や IP 範囲をブロックします。 ship がプライベートネットワーク (localhost、LAN 内 IP、または内部ホスト名) で動作している場合は、明示的に許可する必要があります:
これは以下のような URL に適用されます:
  • http://localhost:8080
  • http://192.168.x.x:8080
  • http://my-ship.local:8080
⚠️ ローカルネットワークを信頼する場合にのみ、これを有効にしてください。この設定は ship URL へのリクエストに対する SSRF 保護を無効にします。

グループチャネル

自動検出はデフォルトで有効になっています。チャネルを手動で固定(Pin)することも可能です:
自動検出を無効にするには:

アクセス制御

DM 許可リスト (空の場合、DM は許可されません。承認フローには ownerShip を使用します):
グループ権限 (デフォルトで制限されています):

オーナーおよび承認システム

未承認のユーザーが対話を試みた際に承認リクエストを受け取るためのオーナー ship を設定します:
オーナー ship はどこでも自動的に承認されます。DM の招待は自動的に承諾され、チャネルメッセージは常に許可されます。オーナーを dmAllowlistdefaultAuthorizedShips に追加する必要はありません。 設定されている場合、オーナーは以下の通知を DM で受け取ります:
  • 許可リストにない ship からの DM リクエスト
  • 未承認のチャネルでのメンション
  • グループへの招待リクエスト

自動承諾設定

DM 招待の自動承諾 (dmAllowlist に含まれる ship からの場合):
グループ招待の自動承諾:

配信ターゲット (CLI/Cron)

openclaw message send や Cron 配信でこれらを使用します:
  • DM: ~sampel-palnet または dm/~sampel-palnet
  • グループ: chat/~host-ship/channel または group:~host-ship/channel

同梱スキル

Tlon プラグインには、Tlon 操作への CLI アクセスを提供する同梱スキル (@tloncorp/tlon-skill) が含まれています:
  • Contacts: プロフィールの取得/更新、連絡先一覧
  • Channels: 一覧表示、作成、メッセージ投稿、履歴取得
  • Groups: 一覧表示、作成、メンバー管理
  • DMs: メッセージ送信、メッセージへのリアクション
  • Reactions: 投稿や DM への絵文字リアクションの追加/削除
  • Settings: スラッシュコマンドによるプラグイン権限の管理
このスキルは、プラグインがインストールされると自動的に利用可能になります。

機能

トラブルシューティング

まず以下のコマンドを順番に確認してください:
よくある問題:
  • DM が無視される: 送信者が dmAllowlist に含まれておらず、承認フロー用の ownerShip も設定されていない。
  • グループメッセージが無視される: チャネルが検出されていないか、送信者が承認されていない。
  • 接続エラー: ship の URL が到達可能か確認してください。ローカルの ship の場合は allowPrivateNetwork を有効にしてください。
  • 認証エラー: ログインコードが最新であることを確認してください(コードは更新されることがあります)。

構成リファレンス

完全な構成: 構成 プロバイダーオプション:
  • 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: DM を許可する ship (空の場合はなし)。
  • channels.tlon.autoAcceptDmInvites: 許可リストにある ship からの DM を自動承諾。
  • 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 ストレージにアップロードされ、画像ブロックとして埋め込まれます。