Nostr
Status: Plugin empacotado opcional (desativado por padrão até ser configurado). Nostr é um protocolo descentralizado para rede social. Este canal permite que o OpenClaw receba e responda a mensagens diretas (DMs) criptografadas via NIP-04.Plugin empacotado
As versões atuais do OpenClaw incluem o Nostr como um plugin empacotado, portanto builds empacotadas normais não precisam de uma instalação separada.Instalações antigas/personalizadas
- O onboarding (
openclaw onboard) eopenclaw channels addainda exibem o Nostr no catálogo compartilhado de canais. - Se a sua build excluir o Nostr empacotado, instale-o manualmente.
Configuração não interativa
--use-env para manter NOSTR_PRIVATE_KEY no ambiente em vez de armazenar a chave na configuração.
Configuração rápida
- Gere um par de chaves Nostr (se necessário):
- Adicione à configuração:
- Exporte a chave:
- Reinicie o Gateway.
Referência de configuração
| Chave | Tipo | Padrão | Descrição |
|---|---|---|---|
privateKey | string | obrigatório | Chave privada em formato nsec ou hex |
relays | string[] | ['wss://relay.damus.io', 'wss://nos.lol'] | URLs de relay (WebSocket) |
dmPolicy | string | pairing | Política de acesso a DM |
allowFrom | string[] | [] | Chaves públicas de remetentes permitidos |
enabled | boolean | true | Ativar/desativar canal |
name | string | - | Nome de exibição |
profile | object | - | Metadados de perfil NIP-01 |
Metadados de perfil
Os dados de perfil são publicados como um evento NIP-01kind:0. Você pode gerenciá-los pela UI de controle (Channels -> Nostr -> Profile) ou defini-los diretamente na configuração.
Exemplo:
- URLs de perfil devem usar
https://. - A importação a partir de relays mescla os campos e preserva substituições locais.
Controle de acesso
Políticas de DM
- pairing (padrão): remetentes desconhecidos recebem um código de pareamento.
- allowlist: apenas chaves públicas em
allowFrompodem enviar DM. - open: DMs públicas de entrada (requer
allowFrom: ["*"]). - disabled: ignora DMs de entrada.
- Assinaturas de eventos de entrada são verificadas antes da política de remetente e da descriptografia NIP-04, então eventos forjados são rejeitados logo no início.
- Respostas de pareamento são enviadas sem processar o corpo original da DM.
- DMs de entrada têm limite de taxa, e payloads grandes demais são descartados antes da descriptografia.
Exemplo de allowlist
Formatos de chave
Formatos aceitos:- Chave privada:
nsec...ou hex com 64 caracteres - Chaves públicas (
allowFrom):npub...ou hex
Relays
Padrões:relay.damus.io e nos.lol.
- Use 2 a 3 relays para redundância.
- Evite relays demais (latência, duplicação).
- Relays pagos podem melhorar a confiabilidade.
- Relays locais funcionam bem para testes (
ws://localhost:7777).
Suporte a protocolo
| NIP | Status | Descrição |
|---|---|---|
| NIP-01 | Compatível | Formato básico de evento + metadados de perfil |
| NIP-04 | Compatível | DMs criptografadas (kind:4) |
| NIP-17 | Planejado | DMs com gift-wrap |
| NIP-44 | Planejado | Criptografia versionada |
Testes
Relay local
Teste manual
- Anote a chave pública do bot (npub) nos logs.
- Abra um cliente Nostr (Damus, Amethyst etc.).
- Envie uma DM para a chave pública do bot.
- Verifique a resposta.
Solução de problemas
Não está recebendo mensagens
- Verifique se a chave privada é válida.
- Garanta que as URLs de relay estejam acessíveis e usem
wss://(ouws://para local). - Confirme que
enablednão está comofalse. - Verifique os logs do Gateway para erros de conexão com relay.
Não está enviando respostas
- Verifique se o relay aceita gravações.
- Verifique a conectividade de saída.
- Observe limites de taxa do relay.
Respostas duplicadas
- Esperado ao usar vários relays.
- As mensagens são desduplicadas por ID de evento; apenas a primeira entrega aciona uma resposta.
Segurança
- Nunca faça commit de chaves privadas.
- Use variáveis de ambiente para chaves.
- Considere
allowlistpara bots de produção. - As assinaturas são verificadas antes da política de remetente, e a política de remetente é aplicada antes da descriptografia, então eventos forjados são rejeitados cedo e remetentes desconhecidos não podem forçar trabalho criptográfico completo.
Limitações (MVP)
- Apenas mensagens diretas (sem chats em grupo).
- Sem anexos de mídia.
- Apenas NIP-04 (gift-wrap NIP-17 planejado).
Relacionado
- Visão geral dos canais — todos os canais compatíveis
- Pareamento — autenticação por DM e fluxo de pareamento
- Grupos — comportamento de chat em grupo e bloqueio por menção
- Roteamento de canal — roteamento de sessão para mensagens
- Segurança — modelo de acesso e reforço de segurança