Skip to main content
Tlon est une messagerie décentralisée construite sur Urbit. OpenClaw se connecte à votre vaisseau Urbit et répond aux messages privés et aux messages des discussions de groupe. Par défaut, les réponses de groupe nécessitent une mention @, avec des règles d’autorisation et un processus d’approbation par le propriétaire qui s’y ajoutent. État : plugin intégré. Les messages privés, les mentions de groupe, les fils de discussion, le texte enrichi, l’envoi et le téléchargement d’images, ainsi qu’un système d’approbation par le propriétaire sont pris en charge. Les réactions et les sondages ne le sont pas.

Plugin intégré

Tlon est intégré aux versions actuelles d’OpenClaw ; les distributions empaquetées ne nécessitent aucune installation distincte. Sur une ancienne version ou une installation personnalisée qui l’exclut, installez-le depuis npm :
Utilisez le nom de paquet seul pour suivre l’étiquette de la version actuelle. Épinglez une version (@openclaw/tlon@x.y.z) uniquement pour les installations reproductibles. Depuis une extraction locale :
Détails : Plugins

Configuration

Ou modifiez directement la configuration :
Redémarrez le Gateway après avoir modifié directement la configuration. Envoyez ensuite un message privé au bot ou mentionnez-le avec @ dans un canal de groupe.

Vaisseaux privés/sur réseau local

Par défaut, OpenClaw bloque les noms d’hôte privés/internes et les plages d’adresses IP afin de protéger contre les SSRF. Si votre vaisseau s’exécute sur un réseau privé (localhost, adresse IP du réseau local, nom d’hôte interne), activez explicitement cette possibilité :
Cela s’applique aux cibles telles que http://localhost:8080, http://192.168.x.x:8080 et http://my-ship.local:8080. N’activez cette option que pour l’URL d’un vaisseau auquel vous faites confiance ; elle désactive la protection contre les SSRF pour les requêtes HTTP de ce compte.
channels.tlon.allowPrivateNetwork (clé non imbriquée) est retirée. openclaw doctor --fix la déplace automatiquement vers channels.tlon.network.dangerouslyAllowPrivateNetwork.

Canaux de groupe

Épinglez les canaux manuellement ou activez la découverte automatique :
Lorsque autoDiscoverChannels n’est pas défini dans la configuration, sa valeur par défaut est false ; l’assistant de configuration propose oui par défaut et écrit explicitement true. Lorsque cette option est activée, OpenClaw interroge les groupes rejoints au démarrage, surveille les nouveaux canaux à mesure que les invitations à des groupes sont acceptées et effectue une nouvelle vérification toutes les 2 minutes.

Contrôle d’accès

Liste d’autorisation des messages privés (vide = aucun message privé autorisé, sauf si l’expéditeur est ownerShip) :
Par défaut, l’autorisation de groupe est définie sur restricted pour chaque canal. Définissez defaultAuthorizedShips comme référence, puis remplacez-la pour chaque arborescence de canal :
Une fois que le bot a répondu dans un fil de discussion, il continue de répondre aux messages ultérieurs de ce fil sans nécessiter une nouvelle mention.

Propriétaire et système d’approbation

Le vaisseau propriétaire est autorisé partout : les invitations aux messages privés sont toujours acceptées automatiquement, les invitations aux groupes sont toujours acceptées automatiquement et les messages des canaux passent toujours l’autorisation. Le propriétaire n’a pas besoin de figurer dans dmAllowlist, defaultAuthorizedShips ou groupInviteAllowlist. Lorsque ownerShip est défini, les requêtes non autorisées ne sont pas simplement ignorées : elles sont mises en attente d’approbation et un message privé est envoyé au propriétaire :
  • Requêtes de message privé provenant de vaisseaux absents de dmAllowlist
  • Mentions dans des canaux où l’expéditeur ne satisfait pas aux règles d’autorisation
  • Invitations à des groupes provenant de vaisseaux absents de groupInviteAllowlist (lorsque l’acceptation automatique est désactivée, ou activée mais que l’auteur de l’invitation ne figure pas dans la liste d’autorisation)
Le propriétaire répond par message privé pour traiter une requête : Si ownerShip n’est pas configuré, les messages privés et les mentions de canal non autorisés sont simplement ignorés et journalisés ; aucune demande d’approbation n’est envoyée.

Paramètres d’acceptation automatique

Acceptez automatiquement les invitations aux messages privés provenant des vaisseaux déjà présents dans dmAllowlist (le propriétaire est toujours accepté automatiquement, quelle que soit la valeur de cette option) :
Acceptez automatiquement les invitations à des groupes provenant d’une liste d’autorisation (comportement fermé par défaut : avec autoAcceptGroupInvites: true et une groupInviteAllowlist vide, aucune invitation provenant d’un non-propriétaire n’est acceptée) :

Rechargement à chaud via le magasin de paramètres Urbit

La plupart des paramètres ci-dessus (dmAllowlist, groupInviteAllowlist, groupChannels, defaultAuthorizedShips, autoDiscoverChannels, autoAcceptDmInvites, autoAcceptGroupInvites, ownerShip, showModelSignature) sont répliqués dans l’agent %settings du vaisseau (bureau moltbot, compartiment tlon) lors de la première exécution, puis lus en direct depuis celui-ci ; les modifications effectuées à l’aide d’un client Landscape ou des commandes de paramètres du Skill intégré s’appliquent donc sans redémarrer le Gateway. channelRules et les approbations en attente y sont également conservés au format JSON. La configuration de fichier reste la source de vérité pour les valeurs qui ne sont jamais écrites dans le magasin de paramètres.

Cibles de livraison (CLI/cron)

À utiliser avec openclaw message send ou une livraison cron :
  • Message privé : ~sampel-palnet ou dm/~sampel-palnet
  • Groupe : chat/~host-ship/channel ou group:~host-ship/channel

Skill intégré

Le plugin intègre @tloncorp/tlon-skill, une CLI permettant d’effectuer directement des opérations Urbit, disponible automatiquement une fois le plugin installé :
  • Activité : mentions, réponses, éléments non lus
  • Canaux : répertorier, créer, renommer
  • Contacts : répertorier/obtenir/mettre à jour les profils
  • Groupes : créer, rejoindre, inviter/demander à rejoindre, gérer les rôles
  • Hooks : gérer les hooks de canal
  • Messages : historique, recherche
  • Messages privés : envoyer, réagir, accepter/refuser
  • Publications : réagir, supprimer
  • Carnet : publier dans les canaux de journal
  • Paramètres : recharger à chaud la configuration du plugin via le magasin de paramètres ci-dessus

Fonctionnalités

Dépannage

Défaillances courantes :
  • Messages privés ignorés : l’expéditeur ne figure pas dans dmAllowlist et aucun ownerShip n’est configuré pour le processus d’approbation.
  • Messages de groupe ignorés : le canal n’a pas été découvert/épinglé, ou l’expéditeur ne satisfait pas aux règles d’autorisation et aucun ownerShip ne permet de mettre une approbation en attente.
  • Erreurs de connexion : vérifiez que l’URL du vaisseau est accessible ; définissez network.dangerouslyAllowPrivateNetwork pour les vaisseaux locaux.
  • Erreurs d’authentification : les codes de connexion changent régulièrement ; copiez le code actuel depuis votre vaisseau.

Référence de configuration

Configuration complète : Configuration

Remarques

  • Les réponses de groupe nécessitent une mention @ (par ex. ~your-bot-ship), sauf si le bot a déjà rejoint ce fil de discussion.
  • Les réponses aux fils de discussion sont publiées dans le fil ; les 10 derniers messages du contexte du fil sont également ajoutés au début pour l’agent.
  • Le texte enrichi (gras, italique, code, en-têtes, listes) est converti au format natif de Tlon.
  • L’envoi d’un message entrant demandant un résumé du canal (par exemple « résume ce canal ») déclenche un résumé intégré de l’historique au lieu du processus de réponse normal.

Pages connexes

  • Présentation des canaux — tous les canaux pris en charge
  • Appairage — authentification des messages privés et processus d’appairage
  • Groupes — comportement des discussions de groupe et obligation de mention
  • Routage des canaux — routage des sessions pour les messages
  • Sécurité — modèle d’accès et renforcement de la sécurité