Skip to main content
Nostr, OpenClaw’ın Nostr aktarıcıları üzerinden NIP-04 ile şifrelenmiş doğrudan mesajları alıp yanıtlamasını sağlayan, indirilebilir bir kanal pluginidir (@openclaw/nostr). Gateway başına bir hesap; yalnızca DM’ler.

Kurulum

Güncel resmî sürüm etiketini izlemek için yalnızca paket belirtimini kullanın. Yalnızca yeniden üretilebilir bir kurulum gerektiğinde tam bir sürümü sabitleyin. Yerel bir çalışma kopyasından (geliştirme iş akışları):
Pluginleri kurduktan veya etkinleştirdikten sonra Gateway’i yeniden başlatın. Plugin kurulduktan sonra ilk katılım (openclaw onboard) ve openclaw channels add, Nostr’ı paylaşılan kanal kataloğunda gösterir.

Etkileşimsiz kurulum

Anahtarı yapılandırmada saklamak yerine NOSTR_PRIVATE_KEY ortamda tutmak için --use-env kullanın (yalnızca varsayılan hesap).

Hızlı kurulum

  1. Bir Nostr anahtar çifti oluşturun (gerekirse):
  1. Yapılandırmaya ekleyin:
  1. Anahtarı dışa aktarın:
  1. Gateway’i yeniden başlatın.

Yapılandırma başvurusu

Profil meta verileri

Profil verileri, bir NIP-01 kind:0 olayı olarak yayımlanır. Bunları Control UI’dan (Channels -> Nostr -> Profile) yönetebilir veya doğrudan yapılandırmada ayarlayabilirsiniz. Örnek:
Notlar:
  • Profil URL’leri https:// kullanmalıdır.
  • Aktarıcılardan içe aktarma, alanları birleştirir ve yerel geçersiz kılmaları korur.

Erişim denetimi

DM ilkeleri

  • eşleştirme (varsayılan): bilinmeyen gönderenler bir eşleştirme kodu alır.
  • izin listesi: yalnızca allowFrom içindeki açık anahtarlar DM gönderebilir.
  • açık: herkese açık gelen DM’ler (allowFrom: ["*"] gerektirir).
  • devre dışı: gelen DM’leri yok sayar.
Uygulama notları:
  • Gelen olay imzaları, gönderen ilkesi ve NIP-04 şifre çözme işleminden önce doğrulanır; böylece sahte olaylar erkenden reddedilir.
  • Eşleştirme yanıtları, özgün DM gövdesinin şifresi çözülmeden veya gövde işlenmeden gönderilir.
  • Gelen DM’lere hız sınırı uygulanır (genel olarak ve gönderen başına) ve aşırı büyük yükler şifre çözme işleminden önce bırakılır.

İzin listesi örneği

Anahtar biçimleri

Kabul edilen biçimler:
  • Özel anahtar: nsec... veya 64 karakterlik onaltılık değer
  • Açık anahtarlar (allowFrom): npub... veya onaltılık değer

Aktarıcılar

Varsayılanlar: relay.damus.io ve nos.lol.
İpuçları:
  • Yedeklilik için 2-3 aktarıcı kullanın.
  • Çok fazla aktarıcı kullanmaktan kaçının (gecikme, yinelenme).
  • Ücretli aktarıcılar güvenilirliği artırabilir.
  • Yerel aktarıcılar test için uygundur (ws://localhost:7777).

Protokol desteği

Test

Yerel aktarıcı

Manuel test

  1. Botun açık anahtarını Gateway günlüklerinden veya openclaw channels status üzerinden not edin (onaltılık; gerekirse istemcinizde npub’a dönüştürün).
  2. Bir Nostr istemcisi açın (Amethyst, Damus vb.).
  3. Botun açık anahtarına DM gönderin.
  4. Yanıtı doğrulayın.

Sorun giderme

Mesajlar alınmıyor

  • Özel anahtarın geçerli olduğunu doğrulayın.
  • Aktarıcı URL’lerine erişilebildiğinden ve wss:// (yerel için ws://) kullandıklarından emin olun.
  • enabled değerinin false olmadığını doğrulayın.
  • Aktarıcı bağlantı hataları için Gateway günlüklerini kontrol edin.

Yanıtlar gönderilmiyor

  • Aktarıcının yazma işlemlerini kabul ettiğini kontrol edin.
  • Giden bağlantıyı doğrulayın.
  • Aktarıcı hız sınırlarını izleyin.

Yinelenen yanıtlar

  • Birden fazla aktarıcı kullanılırken bu beklenen bir durumdur.
  • Mesajların yinelenenleri olay kimliğine göre ayıklanır; yalnızca ilk teslimat bir yanıtı tetikler.

Güvenlik

  • Özel anahtarları asla commit etmeyin.
  • Anahtarlar için ortam değişkenlerini kullanın.
  • Üretim botları için allowlist kullanmayı değerlendirin.
  • İmzalar gönderen ilkesinden önce doğrulanır ve gönderen ilkesi şifre çözme işleminden önce uygulanır; böylece sahte olaylar erkenden reddedilir ve bilinmeyen gönderenler tüm kriptografik işlemlerin gerçekleştirilmesini zorlayamaz.

Sınırlamalar (MVP)

  • Yalnızca doğrudan mesajlar (grup sohbeti yok).
  • Medya eki yok.
  • Yalnızca NIP-04 (NIP-17 hediye paketiyle sarmalama planlanıyor).

İlgili