@openclaw/nostr), який дає OpenClaw змогу отримувати зашифровані особисті повідомлення NIP-04 через ретранслятори Nostr і відповідати на них. Один обліковий запис на кожен Gateway; лише особисті повідомлення.
Встановлення
openclaw onboard) і команда openclaw channels add відображають Nostr зі спільного каталогу каналів.
Неінтерактивне налаштування
--use-env, щоб зберігати NOSTR_PRIVATE_KEY у середовищі, а не записувати ключ у конфігурацію (лише для облікового запису за замовчуванням).
Швидке налаштування
- Створіть пару ключів Nostr (за потреби):
- Додайте до конфігурації:
- Експортуйте ключ:
- Перезапустіть Gateway.
Довідник із конфігурації
Метадані профілю
Дані профілю публікуються як подія NIP-01kind:0. Ними можна керувати в інтерфейсі керування (Channels -> Nostr -> Profile) або задавати їх безпосередньо в конфігурації.
Приклад:
- URL-адреси профілю мають використовувати
https://. - Під час імпорту з ретрансляторів поля об’єднуються, а локальні перевизначення зберігаються.
Керування доступом
Політики особистих повідомлень
- pairing (за замовчуванням): невідомі відправники отримують код сполучення.
- allowlist: надсилати особисті повідомлення можуть лише відкриті ключі з
allowFrom. - open: загальнодоступні вхідні особисті повідомлення (потрібне
allowFrom: ["*"]). - disabled: ігнорувати вхідні особисті повідомлення.
- Підписи вхідних подій перевіряються до застосування політики відправника й розшифрування NIP-04, тому підроблені події відхиляються на ранньому етапі.
- Відповіді для сполучення надсилаються без розшифрування чи обробки початкового вмісту особистого повідомлення.
- Частота вхідних особистих повідомлень обмежується глобально й окремо для кожного відправника, а завеликі корисні навантаження відкидаються до розшифрування.
Приклад списку дозволених
Формати ключів
Прийнятні формати:- Закритий ключ:
nsec...або 64-символьне шістнадцяткове значення - Відкриті ключі (
allowFrom):npub...або шістнадцяткове значення
Ретранслятори
За замовчуванням:relay.damus.io і nos.lol.
- Для резервування використовуйте 2–3 ретранслятори.
- Уникайте надмірної кількості ретрансляторів через затримки й дублювання.
- Платні ретранслятори можуть підвищити надійність.
- Локальні ретранслятори підходять для тестування (
ws://localhost:7777).
Підтримка протоколів
Тестування
Локальний ретранслятор
Ручна перевірка
- Знайдіть відкритий ключ бота в журналах Gateway або за допомогою
openclaw channels status(у шістнадцятковому форматі; за потреби перетворіть його на npub у своєму клієнті). - Відкрийте клієнт Nostr (Amethyst, Damus тощо).
- Надішліть особисте повідомлення на відкритий ключ бота.
- Перевірте відповідь.
Усунення несправностей
Повідомлення не надходять
- Переконайтеся, що закритий ключ дійсний.
- Переконайтеся, що URL-адреси ретрансляторів доступні та використовують
wss://(абоws://для локальних ретрансляторів). - Переконайтеся, що
enabledне має значенняfalse. - Перевірте журнали Gateway на наявність помилок підключення до ретрансляторів.
Відповіді не надсилаються
- Перевірте, чи приймає ретранслятор операції запису.
- Перевірте вихідне підключення.
- Зважайте на обмеження частоти запитів ретранслятора.
Дубльовані відповіді
- Це очікувана поведінка під час використання кількох ретрансляторів.
- Повідомлення дедуплікуються за ідентифікатором події; відповідь спричиняє лише перше доставлення.
Безпека
- Ніколи не фіксуйте закриті ключі в репозиторії.
- Використовуйте змінні середовища для ключів.
- Для робочих ботів варто використовувати
allowlist. - Підписи перевіряються до застосування політики відправника, а політика відправника застосовується до розшифрування, тому підроблені події відхиляються на ранньому етапі, а невідомі відправники не можуть примусово запустити повний обсяг криптографічних обчислень.
Обмеження (MVP)
- Лише особисті повідомлення (без групових чатів).
- Без медіавкладень.
- Лише NIP-04 (подарункову обгортку NIP-17 заплановано).
Пов’язані матеріали
- Огляд каналів — усі підтримувані канали
- Сполучення — автентифікація особистих повідомлень і процес сполучення
- Групи — поведінка групових чатів і обмеження за згадуваннями
- Маршрутизація каналів — маршрутизація сеансів для повідомлень
- Безпека — модель доступу та посилення захисту