Référence des commandes

Toutes les commandes nostrfy : init, start, stop, stats, upgrade et migrate-strfry, plus les listes d’accès en CLI et les filtres d’abonnement inbox/outbox.

Aperçu

Toutes les commandes acceptent --config <path> (par défaut nostrfy.toml).

CommandeDescription
nostrfy initÉcrit un nostrfy.toml par défaut et quitte ; le fichier est créé en mode 0600
nostrfy genkeyGénère une clé secrète pour les groupes NIP-29, l’écrit dans relay.private_key, passe la configuration en mode 0600 et affiche la clé publique ; si le fichier a changé depuis sa lecture, la commande s’arrête sans écrire
nostrfy checkValide la configuration (à exécuter avant le démarrage)
nostrfy startDémarre en démon ; --foreground l’exécute dans le terminal
nostrfy stopArrête le démon en cours
nostrfy restartArrête et redémarre (relit la configuration)
nostrfy statsAffiche les statistiques en direct
nostrfy upgrade [version]Met à jour le binaire vers la dernière release GitHub (ou la version indiquée) ; télécharge l’asset de la plateforme, vérifie son sha256 et exécute --version puis remplace le binaire de façon atomique ; les exécutions concurrentes sont sérialisées par un fichier de verrou ; sans version indiquée, aucune rétrogradation n’a lieu ; --force force la réinstallation
nostrfy migrate-strfryImporte les événements d’un relais strfry — soit en exécutant strfry export via --strfry-db, soit en lisant un fichier JSONL avec --input, soit via stdin ; réexécutable, avec --dry-run, --since et la fusion optionnelle des réglages

Gérer les listes d’accès

Les listes d’autorisation et de refus du relais et la liste d’autorisation d’upload Blossom vivent dans LMDB et s’appliquent immédiatement — le démon en cours est rechargé automatiquement :

sh
nostrfy relay allow npub1...
nostrfy relay deny npub1...
nostrfy relay list

nostrfy blossom allow npub1...
nostrfy blossom deny npub1...
nostrfy blossom list

Une clé refusée est toujours rejetée à la publication et jamais servie en lecture.

nostrfy access unblockip <ip> : retire une IP de la liste des IP bloquées NIP-86 persistée (récupération après auto-blocage) ; redémarrez le démon pour l’appliquer.

Filtres d’abonnement inbox/outbox

nostrfy étend la syntaxe des filtres REQ pour le modèle de routage inbox/outbox avec deux clés pratiques — une extension nostrfy, pas une partie d’un NIP. "outbox" se développe en "authors" : seuls les événements créés par cette clé. "inbox" se développe en "#p" : seuls les événements adressés à cette clé (mentions, réponses, zaps et messages privés). Les valeurs peuvent être en hexadécimal de 64 caractères ou en npub1, ou des tableaux fusionnés avec une clé authors/#p existante ; une clé invalide rejette l’abonnement :

jsonc
["REQ", "my-feed", {"outbox": "npub1..."}]
["REQ", "mentions", {"inbox": "npub1...", "kinds": [1, 7]}]

Les points de terminaison sont aussi limités en écriture : /outbox n’accepte que les événements créés par la clé authentifiée NIP-42 de la connexion (server.outbox_write_policy = "any"), ou uniquement les événements du relais ("relay") ; /inbox n’accepte que les événements portant un tag p.

Migration depuis strfry

Une seule commande reprend les événements d’un relais strfry existant. La migration est hors ligne (arrêtez d’abord le relais nostrfy — elle refuse de s’exécuter si la base est occupée), lit le propre format d’export de strfry et peut être relancée sans risque : les doublons sont ignorés et les effets des suppressions réappliqués.

sh
# d’abord un dry-run — vérifie chaque événement sans rien écrire
nostrfy migrate-strfry --strfry-db /var/lib/strfry-db --dry-run

# import (arrêtez d’abord le relais nostrfy)
nostrfy migrate-strfry --strfry-db /var/lib/strfry-db

Il propose aussi de fusionner les réglages strfry équivalents dans nostrfy.toml, et après une interruption avec --since reprendre. Les groupes NIP-29 et les rôles NIP-43 sont reconstruits à partir des événements importés au premier démarrage. Le manuel complet se trouve dans le guide de migration.

Pas à pas
La plupart des commandes sont aussi expliquées pas à pas dans le guide de démarrage rapide.