Skip to main content
Nostr es un plugin de canal descargable (@openclaw/nostr) que permite a OpenClaw recibir y responder mensajes directos cifrados con NIP-04 mediante relés de Nostr. Una cuenta por gateway; solo mensajes directos.

Instalación

Use la especificación del paquete sin versión para seguir la etiqueta de la versión oficial actual. Fije una versión exacta solo cuando necesite una instalación reproducible. Desde un checkout local (flujos de trabajo de desarrollo):
Reinicie el gateway después de instalar o habilitar plugins. La incorporación (openclaw onboard) y openclaw channels add muestran Nostr desde el catálogo compartido de canales una vez instalado el plugin.

Configuración no interactiva

Use --use-env para mantener NOSTR_PRIVATE_KEY en el entorno en lugar de almacenar la clave en la configuración (solo para la cuenta predeterminada).

Configuración rápida

  1. Genere un par de claves de Nostr (si es necesario):
  1. Añádalo a la configuración:
  1. Exporte la clave:
  1. Reinicie el gateway.

Referencia de configuración

Metadatos del perfil

Los datos del perfil se publican como un evento NIP-01 kind:0. Se pueden administrar desde la interfaz de control (Canales -> Nostr -> Perfil) o definir directamente en la configuración. Ejemplo:
Notas:
  • Las URL del perfil deben usar https://.
  • Al importar desde relés, se combinan los campos y se conservan las anulaciones locales.

Control de acceso

Políticas de mensajes directos

  • emparejamiento (predeterminado): los remitentes desconocidos reciben un código de emparejamiento.
  • lista de permitidos: solo las claves públicas incluidas en allowFrom pueden enviar mensajes directos.
  • abierta: mensajes directos entrantes públicos (requiere allowFrom: ["*"]).
  • deshabilitada: se ignoran los mensajes directos entrantes.
Notas sobre la aplicación:
  • Las firmas de los eventos entrantes se verifican antes de aplicar la política de remitentes y descifrar mediante NIP-04, por lo que los eventos falsificados se rechazan de inmediato.
  • Las respuestas de emparejamiento se envían sin descifrar ni procesar el cuerpo del mensaje directo original.
  • Se limita la frecuencia de los mensajes directos entrantes (globalmente y por remitente), y las cargas útiles demasiado grandes se descartan antes de descifrarlas.

Ejemplo de lista de permitidos

Formatos de clave

Formatos aceptados:
  • Clave privada: nsec... o una cadena hexadecimal de 64 caracteres
  • Claves públicas (allowFrom): npub... o formato hexadecimal

Relés

Valores predeterminados: relay.damus.io y nos.lol.
Consejos:
  • Use entre 2 y 3 relés para obtener redundancia.
  • Evite usar demasiados relés (latencia y duplicación).
  • Los relés de pago pueden mejorar la fiabilidad.
  • Los relés locales son adecuados para las pruebas (ws://localhost:7777).

Compatibilidad con protocolos

Pruebas

Relé local

Prueba manual

  1. Anote la clave pública del bot que aparece en los registros del gateway o en openclaw channels status (hexadecimal; conviértala a npub en su cliente si es necesario).
  2. Abra un cliente de Nostr (Amethyst, Damus, etc.).
  3. Envíe un mensaje directo a la clave pública del bot.
  4. Verifique la respuesta.

Solución de problemas

No se reciben mensajes

  • Verifique que la clave privada sea válida.
  • Asegúrese de que las URL de los relés sean accesibles y usen wss:// (o ws:// para conexiones locales).
  • Confirme que enabled no sea false.
  • Compruebe si hay errores de conexión con los relés en los registros del gateway.

No se envían respuestas

  • Compruebe que el relé acepte escrituras.
  • Verifique la conectividad saliente.
  • Compruebe si se alcanzan los límites de frecuencia del relé.

Respuestas duplicadas

  • Es algo esperado cuando se usan varios relés.
  • Los mensajes se deduplican mediante el identificador del evento; solo la primera entrega desencadena una respuesta.

Seguridad

  • Nunca confirme claves privadas en el repositorio.
  • Use variables de entorno para las claves.
  • Considere allowlist para bots de producción.
  • Las firmas se verifican antes de aplicar la política de remitentes, y esta se aplica antes de descifrar, por lo que los eventos falsificados se rechazan de inmediato y los remitentes desconocidos no pueden forzar la ejecución completa de las operaciones criptográficas.

Limitaciones (MVP)

  • Solo mensajes directos (sin chats grupales).
  • Sin archivos multimedia adjuntos.
  • Solo NIP-04 (se prevé la envoltura de regalo de NIP-17).

Contenido relacionado