Befehlsreferenz
Alle nostrfy-Befehle: init, start, stop, stats, upgrade und migrate-strfry, plus CLI-Zugriffslisten und inbox/outbox-Abonnementfilter.
Übersicht
Alle Befehle akzeptieren --config <path> (standardmäßig nostrfy.toml).
| Befehl | Beschreibung |
|---|---|
nostrfy init | Schreibt eine standardmäßige nostrfy.toml und beendet sich; die Datei wird mit 0600 erstellt |
nostrfy genkey | Erzeugt einen geheimen Schlüssel für NIP-29-Gruppen, schreibt ihn in relay.private_key, setzt die Konfiguration auf 0600 und gibt den öffentlichen Schlüssel aus; wird die Datei nach dem Lesen geändert, bricht der Befehl ohne Schreiben ab |
nostrfy check | Validiert die Konfiguration (vor dem Start ausführen) |
nostrfy start | Startet als Daemon; --foreground führt im Terminal aus |
nostrfy stop | Stoppt den laufenden Daemon |
nostrfy restart | Stoppt und startet neu (liest die Konfiguration neu) |
nostrfy stats | Zeigt Live-Statistiken |
nostrfy upgrade [version] | Aktualisiert das Binary auf das neueste GitHub-Release (oder die angegebene Version); lädt das passende Plattform-Asset, verifiziert dessen sha256 und führt eine --version-Prüfung aus, dann ersetzt es das Binary atomar; parallele Läufe werden per Lock-Datei serialisiert; ohne Versionsangabe wird nie herabgestuft; --force erzwingt eine Neuinstallation |
nostrfy migrate-strfry | Importiert Events aus einem strfry-Relay — entweder strfry export über --strfry-db ausführen, eine JSONL-Datei mit --input lesen oder Eingaben über stdin pipen; wiederholbar, mit --dry-run, --since und optionalem Zusammenführen der Einstellungen |
Zugriffslisten verwalten
Die Allow/Deny-Listen des Relays und die Blossom-Upload-Allowlist liegen in LMDB und gelten sofort — der laufende Daemon wird automatisch neu geladen:
nostrfy relay allow npub1...
nostrfy relay deny npub1...
nostrfy relay list
nostrfy blossom allow npub1...
nostrfy blossom deny npub1...
nostrfy blossom listEin gesperrter Pubkey wird beim Veröffentlichen immer abgelehnt und beim Lesen nie ausgeliefert.
nostrfy access unblockip <ip> Entfernt eine IP aus der persistierten NIP-86-Blockliste (Wiederherstellung nach Selbstaussperrung); zum Anwenden den Daemon neu starten.
Inbox/outbox-Abonnementfilter
nostrfy erweitert die REQ-Filtersyntax für das Inbox/Outbox-Routingmodell um zwei Komfortschlüssel — eine nostrfy-Erweiterung, kein Teil eines NIP. "outbox" wird zu "authors" erweitert: nur von diesem Pubkey erstellte Events. "inbox" wird zu "#p" erweitert: nur an diesen Pubkey adressierte Events (Erwähnungen, Antworten, Zaps und DMs). Werte dürfen 64-stellige Hex- oder npub1-kodiert sein oder Arrays, die mit einem vorhandenen authors/#p-Schlüssel
zusammengeführt; ein ungültiger Pubkey lehnt das Abonnement ab:
["REQ", "my-feed", {"outbox": "npub1..."}]
["REQ", "mentions", {"inbox": "npub1...", "kinds": [1, 7]}]Auch die Endpunkte sind schreibbeschränkt: /outbox akzeptiert nur Events, die vom NIP-42-authentifizierten Pubkey der Verbindung erstellt wurden (server.outbox_write_policy = "any"), oder nur die eigenen Events des Relays ("relay"); /inbox akzeptiert nur Events mit p-Tag.
Migration von strfry
Ein Befehl übernimmt die Events eines bestehenden strfry-Relays. Die Migration ist offline (stoppen Sie zuerst das nostrfy-Relay — bei belegter Datenbank verweigert sie den Start), liest strfrys eigenes Exportformat und ist sicher wiederholbar: Duplikate werden übersprungen, Löschnebenwirkungen erneut angewendet.
# zuerst Dry-Run — prüft jedes Event und schreibt nichts
nostrfy migrate-strfry --strfry-db /var/lib/strfry-db --dry-run
# Import (vorher das nostrfy-Relay stoppen)
nostrfy migrate-strfry --strfry-db /var/lib/strfry-dbEs bietet außerdem an, passende strfry-Einstellungen nach nostrfy.toml zu übernehmen, und kann nach einer Unterbrechung mit --since fortgesetzt werden. NIP-29-Gruppen und NIP-43-Rollen werden beim ersten Start aus den importierten Events neu aufgebaut. Das vollständige Handbuch steht in Migrationsanleitung.