OpenClaw

Canal Tlon do OpenClaw

Descentralizado
Avançado

Conecte o OpenClaw ao Tlon, o mensageiro descentralizado construído sobre o Urbit. Esta integração permite que seu assistente de IA receba e responda mensagens diretas e menções de grupo na rede peer-to-peer do Tlon — sem servidores centralizados, sem contas corporativas, apenas sua identidade de nave Urbit e um código de autenticação. Ideal para entusiastas de computação soberana e organizações que valorizam a verdadeira propriedade dos dados.

Info rápida
DificuldadeAvançado
CategoriaDescentralizado
Recursos suportados1 / 6

Tlon Recursos suportados

Mensagens de texto

Suportado

Mídia e arquivos

Não suportado

Reações

Não suportado

Threads

Não suportado

Mensagens de voz

Não suportado

Chat em grupo

Não suportado

Tlon Pré-requisitos

  • OpenClaw Gateway instalado e em execução
  • Uma nave Urbit em execução (planeta, estrela ou cometa) acessível via HTTP
  • O código de autenticação da nave (obtido pela interface web da nave)
  • Node.js 18+ instalado no seu servidor

Tlon Configuração rápida

1

Instalar o plugin Tlon

Execute 'openclaw plugins install @openclaw/tlon' para adicionar o canal Tlon. Alternativamente, use 'openclaw onboard' ou 'openclaw channels add' e selecione Tlon na lista de plugins. Reinicie o Gateway após a instalação.

2

Configurar as credenciais da nave Urbit

Defina seu identificador de nave Urbit (ex: ~sampel-palnet), a URL do host da nave (ex: http://localhost:8080) e o código de autenticação como variáveis de ambiente. Referencie-os na sua configuração openclaw.json usando ${URBIT_SHIP}, ${URBIT_URL} e ${URBIT_CODE}.

3

Iniciar e enviar uma mensagem de teste

Reinicie o Gateway com 'openclaw start'. Abra o app Tlon na sua nave Urbit e envie uma mensagem direta para a nave do bot. O bot deve automaticamente descriptografar, processar e responder.

Tlon Exemplo de configuração

config.json
{
  "channels": {
    "tlon": {
      "ship": "${URBIT_SHIP}",
      "url": "${URBIT_URL}",
      "code": "${URBIT_CODE}",
      "enabled": true
    }
  }
}

Tlon Documentação Detalhada

Visão geral da arquitetura

O Tlon é um aplicativo de mensagens construído sobre o Urbit, uma plataforma de computação peer-to-peer onde cada usuário executa seu próprio servidor (chamado de "nave"). Ao contrário de plataformas centralizadas, seus dados residem na sua nave e você os controla completamente. O fluxo de mensagens funciona da seguinte forma: 1. Um usuário envia um DM ou menciona o bot em um chat de grupo do Tlon 2. A mensagem é entregue via protocolo de rede Ames do Urbit para a nave do bot 3. O OpenClaw recebe a mensagem através da API HTTP da nave 4. O Gateway processa a mensagem através do seu agente de IA e publica a resposta via a mesma API Como o Urbit é uma rede peer-to-peer, não há servidor central que possa ser desligado ou censurado. Cada nave mantém seu próprio estado, e as mensagens são entregues diretamente entre naves pelo protocolo Ames.
O bot executa como um processo companheiro junto à sua nave Urbit — ele se conecta via API HTTP local da nave, não através de nenhum serviço externo.
Naves Urbit têm identidade permanente: um planeta como ~sampel-palnet é seu endereço permanente na rede.

Instalação do plugin

O canal Tlon é distribuído como um plugin opcional do OpenClaw em vez de ser integrado ao Gateway principal. Isso mantém a instalação base leve enquanto permite adicionar suporte Tlon/Urbit quando necessário. Métodos de instalação: • **npm (recomendado):** Execute 'openclaw plugins install @openclaw/tlon' para instalar a versão estável. • **Desenvolvimento local:** Clone o repositório do plugin e use 'openclaw plugins install ./extensions/tlon' para instalar de um diretório local. • **Configuração interativa:** Execute 'openclaw onboard' ou 'openclaw channels add' e selecione Tlon na lista. Após a instalação, reinicie o Gateway para o plugin entrar em vigor.
Execute 'openclaw plugins list' para verificar se o plugin Tlon está instalado e ativo.

Configuração e autenticação da nave Urbit

Para conectar o OpenClaw ao Tlon, você precisa de três informações da sua nave Urbit: 1. **Identificador da nave** — Sua identidade Urbit (ex: ~sampel-palnet). Esta é a nave que atuará como bot. 2. **URL do host** — O endpoint HTTP onde a nave está acessível. O Urbit usa a porta 80 por padrão, recorrendo à 8080 se a porta 80 estiver em uso (ex: http://localhost:8080). Verifique os logs de inicialização da sua nave para a porta real. 3. **Código de autenticação** — Um código secreto usado para autenticar requisições da API. Você pode encontrá-lo na interface web da sua nave em Configurações, ou executando '+code' no Dojo (a linha de comando do Urbit). O OpenClaw usa essas credenciais para se autenticar com a API HTTP da nave e se inscrever para mensagens recebidas.
openclaw.json
{
  "channels": {
    "tlon": {
      "ship": "${URBIT_SHIP}",
      "url": "${URBIT_URL}",
      "code": "${URBIT_CODE}"
    }
  }
}
Nunca codifique seu código de autenticação diretamente no openclaw.json. Sempre use variáveis de ambiente (ex: ${URBIT_CODE}) e defina-as via 'export URBIT_CODE="sampel-ticlyt-migfun-falmel"' no seu shell ou arquivo .env.

Descoberta automática e fixação de canais

Por padrão, o OpenClaw descobre automaticamente os canais de grupo na sua nave Urbit, permitindo que o bot responda a menções em qualquer grupo do qual participou. Você pode desativar a descoberta automática e fixar canais específicos manualmente. Os caminhos de canais no Tlon seguem o formato: chat/~host-ship/channel-name. Por exemplo, 'chat/~host-ship/general' refere-se ao canal de chat 'general' hospedado por ~host-ship. Quando a descoberta automática está desativada, apenas canais fixados serão monitorados. Isso é útil quando você quer que o bot participe apenas de conversas específicas sem ser acionado em cada grupo.
openclaw.json
{
  "channels": {
    "tlon": {
      "autoDiscovery": false,
      "channels": [
        "chat/~host-ship/general",
        "chat/~host-ship/support"
      ]
    }
  }
}
A descoberta automática está habilitada por padrão. Defina autoDiscovery: false para restringir o bot apenas aos canais fixados.
Os caminhos de canais usam o formato chat/~host-ship/channel-name. Verifique o caminho exato de cada canal no app Tlon.

Políticas de DM

As políticas de DM (Mensagem Direta) controlam quem pode interagir com seu assistente de IA via Tlon. Como as naves Urbit têm identidades permanentes, o controle de acesso é baseado em endereços de naves. O OpenClaw suporta as seguintes políticas de DM para o canal Tlon: • **open (padrão)** — Qualquer nave pode enviar um DM para o bot. Como os DMs do Tlon exigem que ambas as partes estejam na rede Urbit, isso é relativamente seguro. • **allowlist** — Apenas naves listadas em allowFrom podem enviar mensagens ao bot. As demais são ignoradas. Quando allowFrom é definido como um array vazio, todas as naves são permitidas (equivalente ao modo open). Adicione endereços de naves específicos para restringir o acesso.
openclaw.json
{
  "channels": {
    "tlon": {
      "allowFrom": [
        "~sampel-palnet",
        "~timluc-miptev"
      ]
    }
  }
}

Controle de acesso de grupos

Os canais de grupo no Tlon têm sua própria camada de controle de acesso. Por padrão, os grupos são restritos — o bot só responderá em grupos onde as naves autorizadas estão explicitamente listadas. Cada canal de grupo pode ser configurado com: • **authorized** — Uma lista de endereços de naves que podem acionar o bot neste grupo • **mode** — 'restricted' (apenas naves autorizadas podem acionar) ou 'open' (qualquer membro do grupo pode acionar) Em grupos, o bot responde apenas quando é explicitamente mencionado com @. Isso evita que o bot responda a cada mensagem em um chat de grupo movimentado.
openclaw.json
{
  "channels": {
    "tlon": {
      "groups": {
        "chat/~host-ship/general": {
          "mode": "restricted",
          "authorized": ["~sampel-palnet"]
        },
        "chat/~host-ship/public": {
          "mode": "open"
        }
      }
    }
  }
}
No modo restrito, apenas naves listadas em 'authorized' podem acionar respostas do bot.
Respostas de grupo requerem menções @ — mesmo no modo aberto, o bot não responderá a mensagens normais.

Alvos de entrega (CLI e tarefas agendadas)

O OpenClaw suporta o envio de mensagens proativas via CLI ou tarefas cron agendadas. Para o canal Tlon, você pode direcionar tanto DMs quanto canais de grupo. Alvos de entrega de DM: • ~sampel-palnet — Enviar um DM para esta nave • dm/~sampel-palnet — Formato explícito de DM Alvos de entrega de grupo: • chat/~host-ship/channel — Postar em um canal de grupo específico • group:~host-ship/channel — Formato alternativo de grupo Isso é útil para enviar notificações agendadas, alertas ou relatórios periódicos para naves ou canais de grupo específicos.
CLI examples
# Send a DM to a specific ship
openclaw send tlon ~sampel-palnet "Your daily report is ready."

# Post to a group channel
openclaw send tlon chat/~host-ship/general "System status: all clear."

Limitações de tratamento de mídia

A integração atual do Tlon suporta apenas mensagens de texto. Reações, enquetes e uploads nativos de mídia não são suportados devido a limitações na integração da API Urbit do plugin. Quando o agente de IA gera uma resposta que inclui mídia (imagens, arquivos, etc.), o plugin recorre à entrega apenas texto: • Imagens — A URL é anexada ao texto da mensagem em vez de ser exibida inline • Arquivos — Um link de download é incluído na resposta de texto • Reações — Não suportadas; o bot não pode reagir a mensagens • Threads — Não suportados; todas as respostas vão para a conversa principal Atualizações futuras do plugin podem adicionar suporte nativo de mídia à medida que a plataforma Tlon evolui.
Se seu agente de IA gera frequentemente respostas com imagens, considere incluir no prompt do sistema que o canal Tlon é apenas texto.
URLs nas mensagens são clicáveis no app Tlon — os usuários podem tocar para ver o conteúdo de mídia no navegador.

Tlon Referência de Configuração

ship
Type: stringDefault: (required)

Seu identificador de nave Urbit (ex: ~sampel-palnet). Esta é a nave que atua como bot.

url
Type: stringDefault: "http://localhost:8080"

Endpoint HTTP onde a nave Urbit está acessível

code
Type: stringDefault: (required)

Código de autenticação para a API HTTP da nave Urbit. Use uma referência de variável de ambiente.

enabled
Type: booleanDefault: true

Ativar ou desativar o canal Tlon

name
Type: stringDefault: ""

Nome de exibição para esta instância de canal

autoDiscovery
Type: booleanDefault: true

Descobrir e monitorar automaticamente todos os canais de grupo na nave

channels
Type: string[]Default: []

Lista de caminhos de canais de grupo para monitorar quando autoDiscovery está desativado (ex: chat/~host-ship/general)

allowFrom
Type: string[]Default: []

Lista de endereços de naves permitidos para enviar DMs ao bot. Um array vazio permite todas as naves.

groups
Type: objectDefault: {}

Configuração de controle de acesso por grupo com modo e listas de naves autorizadas

groups.<path>.mode
Type: stringDefault: "restricted"

Modo de acesso do grupo: 'restricted' (apenas naves autorizadas) ou 'open' (qualquer membro do grupo)

groups.<path>.authorized
Type: string[]Default: []

Lista de endereços de naves autorizadas a acionar o bot neste grupo (quando o modo é 'restricted')

Tlon Perguntas Frequentes

Tlon Solução de Problemas

Bot inicia mas não recebe nenhuma mensagem

A URL da nave ou o código de autenticação pode estar incorreto, ou a nave não está em execução.

Verifique se a nave está acessível abrindo a URL no navegador. Verifique se o código de autenticação está correto (execute '+code' no Dojo). Certifique-se de que as variáveis de ambiente estão corretamente exportadas: 'echo $URBIT_URL' e 'echo $URBIT_CODE'.
Erro: falha na autenticação

O código de autenticação expirou ou está incorreto. Naves Urbit podem rotacionar seus códigos de autenticação.

Obtenha um novo código de autenticação pela interface web da nave (Configurações) ou executando '+code' no Dojo. Atualize a variável de ambiente URBIT_CODE e reinicie o Gateway.
Bot responde a DMs mas não em canais de grupo

A descoberta automática pode estar desativada e o canal de grupo não está fixado, ou o controle de acesso do grupo está bloqueando o remetente.

Verifique se autoDiscovery está definido como false — se sim, adicione o canal de grupo ao array channels. Verifique se a nave do remetente está na lista authorized do grupo (para modo restrito). Lembre-se de que respostas de grupo requerem menções @.
Plugin não encontrado após a instalação

O Gateway não foi reiniciado após a instalação do plugin, ou a instalação falhou silenciosamente.

Execute 'openclaw plugins list' para verificar se o plugin Tlon está instalado. Se não estiver listado, execute novamente 'openclaw plugins install @openclaw/tlon'. Reinicie o Gateway com 'openclaw start' após a instalação.
Conexão cai frequentemente

A API HTTP da nave Urbit pode estar inacessível devido a problemas de rede ou a nave sob carga pesada.

Verifique sua conectividade de rede com a nave. Se estiver executando remotamente, certifique-se de que a porta HTTP não está bloqueada por um firewall. Considere executar o bot na mesma máquina da nave para minimizar a latência. Verifique as mensagens de erro no Dojo da nave.