@openclaw/nostr) يتيح لـ OpenClaw تلقي الرسائل المباشرة المشفرة وفق NIP-04 والرد عليها عبر مرحّلات Nostr. حساب واحد لكل Gateway؛ الرسائل المباشرة فقط.
التثبيت
openclaw onboard) والأمر openclaw channels add قناة Nostr من كتالوج القنوات المشترك بعد تثبيت Plugin.
الإعداد غير التفاعلي
--use-env للاحتفاظ بـ NOSTR_PRIVATE_KEY في البيئة بدلًا من تخزين المفتاح في الإعدادات (للحساب الافتراضي فقط).
الإعداد السريع
- أنشئ زوج مفاتيح Nostr (عند الحاجة):
- أضفه إلى الإعدادات:
- صدّر المفتاح:
- أعد تشغيل Gateway.
مرجع الإعدادات
بيانات الملف الشخصي الوصفية
تُنشر بيانات الملف الشخصي كحدث NIP-01 من النوعkind:0. يمكنك إدارتها من واجهة التحكم (Channels -> Nostr -> Profile) أو تعيينها مباشرة في الإعدادات.
مثال:
- يجب أن تستخدم عناوين URL للملف الشخصي
https://. - يؤدي الاستيراد من المرحّلات إلى دمج الحقول مع الحفاظ على التجاوزات المحلية.
التحكم في الوصول
سياسات الرسائل المباشرة
- pairing (الافتراضية): يحصل المرسلون غير المعروفين على رمز إقران.
- allowlist: لا يمكن إرسال رسائل مباشرة إلا من المفاتيح العامة الموجودة في
allowFrom. - open: رسائل مباشرة واردة متاحة للعامة (تتطلب
allowFrom: ["*"]). - disabled: تجاهل الرسائل المباشرة الواردة.
- يجري التحقق من توقيعات الأحداث الواردة قبل تطبيق سياسة المرسل وفك تشفير NIP-04، لذلك تُرفض الأحداث المزوّرة مبكرًا.
- تُرسل ردود الإقران دون فك تشفير نص الرسالة المباشرة الأصلية أو معالجته.
- تخضع الرسائل المباشرة الواردة لتحديد المعدل (عموميًا ولكل مرسل)، وتُسقط الحمولات ذات الحجم الزائد قبل فك التشفير.
مثال على قائمة السماح
تنسيقات المفاتيح
التنسيقات المقبولة:- المفتاح الخاص:
nsec...أو قيمة سداسية عشرية من 64 محرفًا - المفاتيح العامة (
allowFrom):npub...أو قيمة سداسية عشرية
المرحّلات
القيم الافتراضية:relay.damus.io وnos.lol.
- استخدم مرحّلين أو ثلاثة مرحّلات لتحقيق التكرار الاحتياطي.
- تجنّب استخدام عدد كبير جدًا من المرحّلات (بسبب زمن الاستجابة والتكرار).
- يمكن للمرحّلات المدفوعة تحسين الموثوقية.
- المرحّلات المحلية مناسبة للاختبار (
ws://localhost:7777).
دعم البروتوكولات
الاختبار
مرحّل محلي
اختبار يدوي
- دوّن المفتاح العام للروبوت من سجلات Gateway أو من
openclaw channels status(بتنسيق سداسي عشري؛ حوّله إلى npub في عميلك عند الحاجة). - افتح عميل Nostr (Amethyst أو Damus أو غيرهما).
- أرسل رسالة مباشرة إلى المفتاح العام للروبوت.
- تحقّق من الرد.
استكشاف الأخطاء وإصلاحها
عدم تلقي الرسائل
- تحقّق من صلاحية المفتاح الخاص.
- تأكد من إمكانية الوصول إلى عناوين URL للمرحّلات ومن أنها تستخدم
wss://(أوws://للاتصال المحلي). - تأكد من أن
enabledليستfalse. - افحص سجلات Gateway بحثًا عن أخطاء الاتصال بالمرحّلات.
عدم إرسال الردود
- تحقّق من أن المرحّل يقبل عمليات الكتابة.
- تحقّق من الاتصال الصادر.
- راقب حدود المعدل التي تفرضها المرحّلات.
الردود المكررة
- هذا متوقع عند استخدام مرحّلات متعددة.
- تُزال الرسائل المكررة استنادًا إلى معرّف الحدث؛ ولا يؤدي إلى تشغيل رد سوى أول تسليم.
الأمان
- لا تُضمّن المفاتيح الخاصة في المستودع مطلقًا.
- استخدم متغيرات البيئة للمفاتيح.
- فكّر في استخدام
allowlistلروبوتات بيئة الإنتاج. - يجري التحقق من التوقيعات قبل تطبيق سياسة المرسل، وتُطبّق سياسة المرسل قبل فك التشفير، لذلك تُرفض الأحداث المزوّرة مبكرًا ولا يمكن للمرسلين غير المعروفين فرض تنفيذ عمليات التشفير كاملة.
القيود (الحد الأدنى من المنتج القابل للاستخدام)
- الرسائل المباشرة فقط (لا توجد محادثات جماعية).
- لا توجد مرفقات وسائط.
- NIP-04 فقط (من المخطط دعم التغليف كهدية وفق NIP-17).
ذو صلة
- نظرة عامة على القنوات — جميع القنوات المدعومة
- الإقران — مصادقة الرسائل المباشرة ومسار الإقران
- المجموعات — سلوك المحادثات الجماعية والتحكم بالوصول عبر الإشارات
- توجيه القنوات — توجيه جلسات الرسائل
- الأمان — نموذج الوصول وتعزيز الحماية