Nostr Compass #42
Welkom terug bij Nostr Compass, je wekelijkse gids voor Nostr.
Onze eigen Android-app van Nostr Compass brengt nieuwsbrieven, podcastafleveringen, onderwerpgidsen en spraakberichten van bijdragers samen op één plek. De meest recente ondertekende releasenotes beschrijven volledige nieuwsbrieven met geverifieerde handtekeningen, opgeslagen nummers en 110 onderwerpgidsen die offline beschikbaar zijn, en lokaal zoeken in verhalen en beschikbare transcripties. Bijdragers kunnen spraakberichten opnemen en ermee reageren, een opgeslagen opname beluisteren voordat ze die versturen, en ondertekenen via Amber zonder hun privésleutel in de app op te slaan. Openbare opnamen worden gepubliceerd op Nostr en Blossom.
De laatste app-update bewaart opnamen in de wachtrij en uploadcontrolepunten wanneer Android achtergrondwerk stopt, toont wanneer goedkeuring in Amber nodig is en opent de betreffende opname vanuit een melding. Afzonderlijke weergaven voor afleveringen en spraakberichten houden elk hun eigen scrollpositie bij, terwijl het afspelen op hetzelfde punt verdergaat. Meldingen voor nieuwe opnamen hangen af van de planning en machtigingen van Android.
Deze week: White Noise voegt versleutelde groepspolls en meldingen over onvolledige chatgeschiedenis toe; Holoboard voegt promotieopdrachten via privéberichten en een Android-app toe; fips-pub-domains test ondertekende publieke namen op een mesh; Marmot MDK maakt ontbrekende geschiedenis van versleutelde groepen zichtbaar; en Myco geeft het delen van apps in de buurt een Nostr-identiteit en een eigen store. nostream past de toelating tot de relay aan de belasting aan, terwijl Nostr double ratchet een gat voor verwijderde leden dicht. Ontwikkelwerk herstelt de interoperabiliteit van versleutelde groepen in Amethyst, voegt versleutelde videoberichten aan Divine toe en brengt Nostr Atlas online. Protocolupdates verfijnen identiteitsbewijzen, uitnodigingen voor relays, follow sets en voorgestelde domeinclaims. De terugblik op september aan het einde van de maand volgt dezelfde vragen door zes jaar Nostr.
Belangrijkste verhalen
Holoboard voegt Nostr-promotieopdrachten en een Android-app toe
Holoboard is een prikbord om Nostr-notes te vinden via een rangschikking die met Lightning-betalingen kan worden versterkt. De oorspronkelijke posts blijven Nostr-events; Holoboard levert zijn rangschikking en weergavegegevens via zijn eigen HTTP-API. Dat onderscheid is van belang als een lezer verwacht dat de volgorde op het prikbord een feed is die rechtstreeks van relays komt.
De changelog van 23 september vermeldt promotieopdrachten via privéberichten over zowel het versleutelde NIP-17-pad als het oudere NIP-04-pad. NIP-17 verpakt privéberichten zodat inhoud en afzender verborgen blijven voor relays, terwijl NIP-04 het oudere versleutelingsformaat voor privéberichten is. Een gebruiker kan in hetzelfde gesprek een factuur voor een promotie aanvragen, één gelabelde offerte ontvangen voor de eerste betaalde promotie en zich aanmelden voor herinneringen over het verlopen door met YES te antwoorden. De verzender van promoties probeert mislukte relays opnieuw, terwijl de update van 24 september een Android-app toevoegt en het factuurproces vereenvoudigt.
De notities over de relay-integratie van het project beschrijven gewone notes en reacties op Nostr, routering via een versleutelde inbox en de afhandeling van citaten en verwijderingen. De ondertekende Android-vermelding op Zapstore ondersteunt het bestaan van een app-release, maar de sleutel van die vermelding is niet vastgesteld als de publieke identiteit van het Holoboard-prikbord. Dit is de eerste keer dat Compass het project behandelt.
fips-pub-domains test ondertekende publieke namen voor een mesh
fips-pub-domains is een nieuw experiment met een resolver en naamgeving dat publieke domeinnamen koppelt aan nodes op FIPS, een versleutelde mesh die Nostr-berichten gebruikt om peers te ontdekken. De eerste release combineert die claims met DNS TXT-records, optionele DNSSEC-validatie, lokaal vastgepinde koppelingen, een resolver-daemon voor Linux en Android-integratie met fips2go, de FIPS-client voor telefoons. Een ondertekende claim op zichzelf bewijst geen eigendom van een publiek domein; clients hebben DNS- of DNSSEC-bewijs nodig, een geconfigureerde getuige of een eerder vertrouwde pin.
De release 0.2.0 voegt DNSSEC-bewijzen aan claims toe, zodat een client die alleen een mesh-relay heeft een niet-vastgepinde naam kan valideren, en laat meerdere gevalideerde servers één domein bedienen. Ook worden verouderde pins en DNS-failover hersteld. Versie 0.2.1 herstelt een systemd-unit die anders niet startte en draait de server zonder root; bestaande installaties moeten die unit vervangen om de correctie te krijgen.
Op Android volgt een gemergede wijziging in fips2go geverifieerde koppelingen van publieke namen in de DNS-proxy. Een tweede gemergede wijziging leidt verbindingen met geconfigureerde Nostr-relays over de mesh, zodat de resolver een nog niet eerder geziene domeinclaim kan ophalen en verifiëren terwijl de telefoon geen internetverbinding heeft. De resultaten op apparaten worden door de beheerders in die pull requests gerapporteerd; ze tonen geen bredere uitrol aan.
De tests met twee nodes en met alleen een mesh-relay van het project zijn door de beheerders gerapporteerd bewijs voor een vroege implementatie, geen productie-uitrol. Het NIP-DB-voorstel staat nog open, en de event-kinds in het concept blijven plaatshouders in afwachting van registratie. Het fips2go-verhaal van vorige week ging over het opstarten van de mesh en het ontdekken van peers; het werk van deze week pakt publieke namen en verificatie aan.
Marmot MDK 0.11.0 maakt hiaten in de accountgeschiedenis zichtbaar
Marmot MDK, de Rust-runtime en gegenereerde bindings voor met MLS versleutelde groepsberichten op Nostr, volgt de release voor duurzaam verzenden van vorige week op met versie 0.11.0. Accountherstel verklaart een hiaat in de geschiedenis nu pas als afgesloten nadat elke vereiste relay een niet-afgekapte vergelijking van events heeft voltooid; een onbewezen hiaat levert een duurzame melding op die een host aan de gebruiker kan tonen. Een volle bezorgwachtrij loopt over naar de accountdatabase in plaats van events te laten vallen, en live bezorging schuift de transportcursor op, zodat een herstart niet opnieuw dezelfde geschiedenis ophaalt.
De volledige releasenotes beschrijven ook optionele versleutelde groepspolls, stateless verificatie van events in de bindings en Android-bibliotheken die zijn uitgelijnd op geheugenpagina’s van 16 KB. Applicaties moeten de gegenereerde bindings en systeemeigen bibliotheken uit dit broncohort samen bijwerken; accountdatabases migreren bij de eerste keer openen naar schema 98, en het downgraden van de database wordt niet ondersteund. Een bestaand, af en toe optredend defect bij het inhalen kan berichten die meer dan vijf groepsepochs achterlopen nog steeds onontsleutelbaar laten zonder een melding te geven, dus deze release claimt niet dat de geschiedenis in elk geval volledig wordt hersteld.
Myco 0.8.0–0.8.1 geeft apps in de buurt hun eigen Nostr-store
Myco is een Android-app om kleine Nostr-programma’s, napplets genoemd, uit te wisselen met telefoons in de buurt, ook wanneer die offline zijn. Versie 0.8.0 geeft elke installatie een Nostr-gastidentiteit en maakt inloggen mogelijk met een bestaande sleutel of met Amber, een Android-signer die handtekeningen goedkeurt zonder de accountsleutel te delen. De versie vervangt ook het tabblad Ontdekken door een app-store die zelf een napplet is. Die store leest ondertekende app-vermeldingen en aanbevelingen, terwijl een gedownloade update zonder internetverbinding tussen telefoons in de Circle van een gebruiker kan worden doorgegeven.
Versie 0.8.1 maakt die vermeldingen makkelijker te vinden door de relays te bevragen die een auteur aankondigt; eerdere builds vertrouwden op publieke standaardrelays. De versie toont gecachete profielen en apps meteen, bewaart tragere antwoorden van relays voor latere bezoeken, neemt afstand van falende relays en houdt abonnementen actief zolang een weergave open is. Beide updates behouden het bestaande wire-formaat tussen telefoons. Bijgewerkte telefoons kunnen napplet-updates downloaden en delen; oudere telefoons sturen alleen de aankondigingen ervan door.
Releases met tags
White Noise Android voegt groepspolls en standaardinstellingen per account voor verdwijnende berichten toe
White Noise Android is een Nostr-messenger voor privégesprekken die met Marmot zijn versleuteld. Na de verbeteringen in bezorging en delen die vorige week aan bod kwamen, voegt de release van 30 september via de Marmot Development Kit groepspolls toe met selecteerbare antwoorden, resultaatbalken en deadlines. De release voegt ook standaardinstellingen per account voor verdwijnende berichten toe, lokaal op het apparaat: nieuwe directe gesprekken en groepen nemen de gekozen duur over, terwijl bestaande gesprekken en hun afzonderlijke instellingen hun huidige beleid behouden. Wave hi stuurt een begroeting die een nieuw toegevoegd lid noemt zonder het huidige concept te verstoren.
Met de release kunnen gebruikers de uitsnede voor profiel- en groepsafbeeldingen kiezen en een chatmap verwijderen zonder de gesprekken erin te verwijderen. De meldingen over de geschiedenis tonen wanneer herstel de geschiedenis van een account of groep mogelijk onvolledig laat, met afzonderlijke knoppen om ze te sluiten. Paginering van gesprekken voorkomt dat de weergegeven tijdlijn opnieuw wordt opgebouwd bij een sprong naar recente berichten, en bewerkingen van berichten in behandeling behouden hun tekst terwijl de oorspronkelijke verzending haar bevestigde event-ID verkrijgt. Die overdracht van bewerkingen dekt wijzigingen in gesprekken binnen de draaiende app; ze toont geen persistentie aan wanneer het proces wordt beëindigd.
Dicteren kiest nu per opname tussen Plakken en Verzenden, waarbij automatisch afronden de transcriptie in het concept plaatst. De instelling van de offline provider legt verwerking op het apparaat uit, houdt de toestemming ervoor gescheiden van die voor andere spraakproviders en herstelt onderbroken media nadat de opname is beëindigd. De verwerking van algemene bestanden accepteert begrensde, niet-lege documenten met correcte bestandsnamen, MIME-metadata en foutmeldingen; expliciete downloads van bijlagen gebruiken de door de gebruiker gestarte overdrachtstaken van Android met een terugval op de voorgrond. Plakknoppen gebruiken nu de systeemactie van Android, zodat Secure Paste van GrapheneOS toegang tot het klembord kan verlenen. Android geeft GIPHY-deelacties vanuit iOS ook weer als geanimeerde media en houdt daarbij rekening met het downloadbeleid.
Correcties voor meldingen vernieuwen de bijnamen van afzenders en ruimen meldingen op wanneer een gesprek wordt geopend. De wijzigingen voor het herstel van meldingen behouden openstaand pushwerk wanneer de voorgronddienst niet beschikbaar is en gebruiken een begrensd aantal nieuwe pogingen. Ondertekenen met Amber coördineert reeksen goedkeuringen voor hetzelfde account, zodat snelheidslimieten verzendingen niet annuleren. De nieuwe auditconfiguratie vraagt opnieuw om een keuze over het delen van logs voordat er naar de nieuwe ontvanger wordt geüpload. De broncode stapt ook over op een AGPL-3.0-only-licentie.
nostream 3.1.0 past de proof of work van de relay aan de belasting aan
nostream is een Nostr-relay in TypeScript met PostgreSQL als opslag. Versie 3.1.0 kan de drempel voor proof of work op events tussen door de operator ingestelde grenzen verhogen of verlagen naarmate het waargenomen aantal events verandert. De instelling staat standaard uit, gebruikt het gemeten tempo van elke worker en laat de bestaande statische drempel voor publieke sleutels onafhankelijk, dus operators moeten zich expliciet aanmelden voordat verzenders een andere toelatingseis zien.
Dezelfde release voegt een beheerdashboard toe voor statistieken over de relay, WebSocket en events, resultaten van controles op de netwerkgezondheid en configureerbare meldingen voor operators. De beheer-API staat standaard uit. Met deze bediening kunnen operators belasting van de relay en bereikbaarheidsproblemen van elkaar onderscheiden, terwijl het nieuwe beleid onder expliciete configuratie blijft.
Na de release met proof of work die meebeweegt met de belasting, heeft nostream acties voor meldingen van vertrouwde moderatoren gemerged. NIP-56 definieert events voor het melden van inhoud; de nieuwe optie nip56.hideActionableReports sluit gemelde events uit van resultaten van REQ en COUNT wanneer meldingen ook zijn ingeschakeld. Een melding over een event verbergt dat event, terwijl een melding over een publieke sleutel elk event van die auteur verbergt. De nieuwe optie staat standaard op false, dus alleen het inschakelen van het verzamelen van meldingen laat de bestaande queryresultaten ongewijzigd.
Nostr double ratchet 0.0.171–0.0.172 dicht een gat voor verwijderde leden
Nostr double ratchet is een TypeScript-bibliotheek voor versleutelde privéchats die via Nostr worden verzonden. Versie 0.0.171 roteert de afzendersleutel van een groep na wijzigingen in het lidmaatschap, zodat iemand die met de oude sleutels is verwijderd latere berichten van een bijgewerkte afzender niet kan ontsleutelen, ook niet nadat die afzender opnieuw is gestart. De versie weigert ook verzendingen of sleutelrotatie door een verwijderde lokale eigenaar en breekt een verzending af als het lidmaatschap verandert tijdens de verdeling van sleutels.
Versie 0.0.172 neemt de bestaande, door het account ondertekende goedkeuring van een apparaat op in een optioneel versleuteld antwoord op een uitnodiging. Een ontvanger met de update kan het apparaat van de afzender verifiëren voordat een afzonderlijk registratie-event binnenkomt, terwijl gekoppelde apparaten hun goedkeuring na herstarts behouden. Het veld in de uitnodiging is optioneel en laat de oorspronkelijke handshake en het berichtformaat van de ratchet intact.
Versies 0.0.173–0.0.175 breiden dat werk rond verwijderingen uit met duurzame overdrachten van groepssleutels en een bezorgstatus in de wachtrij die vóór publicatie wordt opgeslagen, zodat onderbroken overdrachten na een herstart worden hersteld. Publicatiecallbacks dragen lokale groepscontext mee waarmee applicaties duurzame nieuwe pogingen na een verwijdering kunnen annuleren, terwijl lidmaatschapsbeheer bezorgbaar blijft; verzendingen in de wachtrij behouden hun oorspronkelijke interne event-ID’s. Dubbele antwoorden op uitnodigingen laten bestaande sessies intact, abonnementen blijven stabiel wanneer contacten veranderen, en momentopnamen van app-sleutels behouden apparaatnamen zonder wijzigbare kopieën te delen. Het ondertekende wire-formaat blijft ongewijzigd; de notes van 0.0.173 vermelden ook Rust 0.0.168 met een terugval voor ontvangstsessies en lokale filtering van groepsecho’s.
Scramble 0.7.4–0.7.5 haalt de berichten op die een nieuw groepslid hoort te zien
Scramble is een cross-platform Marmot-groepsmessenger met een systeemeigen Android-interface. In versie 0.7.5 krijgt elke groep een eigen grens voor de geschiedenis op relays: voorheen werd de grens van het actiefste gesprek op elke groep toegepast, zodat een groep waar iemand net lid van was geworden leeg kon blijven omdat de berichten van na het toetreden nooit werden opgevraagd. Het pad voor opnieuw verbinden krijgt dezelfde correctie, en een groep zonder lokale activiteit vraagt nu alle beschikbare berichten op; MLS voorkomt nog steeds dat een nieuw lid berichten ontsleutelt die vóór het toetreden zijn verzonden.
De voorafgaande release 0.7.4 verhelpt het herhaaldelijk accepteren van uitnodigingen doordat hergebruikte Android-rijen klikhandlers opstapelden, en zorgt ervoor dat de instelling voor een aangepaste Blossom-mediaserver in de systeemeigen app behouden blijft. Versie 0.7.5 levert alleen de systeemeigen Android-APK, dus gebruikers die de oudere Avalonia-bestandsnaam volgen, moeten hun updatedoel wijzigen. Accounts en geschiedenis gaan mee tussen die twee Android-builds, maar groepen die onder de oudere MLS-engine van 0.6.x zijn aangemaakt, migreren niet naar 0.7.x.
Scramble 0.7.6 voegt een handmatige knop Ontbrekende berichten ophalen toe die elk routeringsadres bevraagt dat een groep heeft gebruikt, de tijdsbeperking opheft, een verouderd opgeslagen adres herstelt en meldt wat er is teruggehaald. Epochs van vóór het toetreden van de gebruiker kan de app nog steeds niet ontsleutelen. Beheerders in de systeemeigen app kunnen andere leden promoveren of degraderen, met de actuele status van de ledenlijst en zichtbare uitkomsten bij mislukkingen; gesprekken tussen twee personen verbergen deze knoppen nog steeds. De actie Kopiëren in de groepsinformatie reageert nu, al kunnen uitgenodigde gesprekken nog steeds een interne chat-ID kopiëren in plaats van de groeps-ID van het protocol. Versie 0.7.7 verwerkt ook vastgehouden berichten wanneer de commit van een ander lid binnenkomt; 0.7.8 voegt een regressietest toe voor dat pad van passieve leden.
Amber 6.6.6 herstelt verbindingsgeheimen voor signers op afstand
Amber is een Android-signer die handtekeningen voor Nostr-events goedkeurt zonder de accountsleutel aan een applicatie te geven. Na de wijziging in de versleuteling van back-ups van vorige week herstelt versie 6.6.6 de nostrconnect-parser: een verbindingsparameter met een =, zoals een opgevuld geheim, werd gewijzigd voordat Amber antwoordde. Daardoor faalden op NDK gebaseerde clients bij hun controle van het geheim, ook als de verbinding met de signer verder geldig leek.
De release stuurt ook feedbackissues naar de relays die in de repository-aankondiging van Amber worden genoemd, met een terugval op de vorige relay als de aankondiging niet kan worden opgehaald. Langere time-outs voor Tor geven trage relays meer tijd om die publicatie te bevestigen. De overige wijzigingen verbeteren de zichtbaarheid van pictogrammen en tekst in de thema’s van Amber.
FIPS 0.5.2 dicht een privacylek bij Nostr-detectie
FIPS is een versleutelde mesh die Nostr-identiteiten en relayberichten gebruikt om peers te ontdekken. De onderhoudsrelease 0.5.2 ondertekent verwijderingsverzoeken voor NAT-traversal niet langer met de routeringssleutel van de node, die deze sleutel op relays aan traversalverkeer koppelde. De release werkt ook de TLS-bibliotheek die voor relayverbindingen wordt gebruikt bij naar een versie die een gepubliceerd beveiligingsadvies verhelpt, en herstelt verschillende gevallen van verloren berichten bij het opnieuw uitwisselen van sleutels voor links en sessies.
De releasenotes roepen operators op elk platform op om te upgraden en beschrijven daarnaast afzonderlijke correcties voor de rechten op sleutelbestanden onder Windows, de gateway en de pakketservice. Tijdelijke nodes schrijven geen privé-fips.key meer die bij een latere herstart overschreven zou kunnen worden; operators die een stabiele identiteit wilden, moeten vóór het upgraden de persistente modus instellen. De release verandert het wire-formaat van de mesh niet, dus nodes met verschillende versies kunnen afzonderlijk worden bijgewerkt.
napplet soyLI 0.23.1–0.23.4 herstelt publicatie van backends en goedkeuring door signers
soyLI van napplet.soy is de toolkit voor makers om kleine Nostr-programma’s in een sandbox te maken en te publiceren. Na de release voor gedeelde creaties van vorige week maakt versie 0.23.1 backendmanifesten, handlers en schema’s onderdeel van de controles voor makers en van multiplayer-previews. Draagbare providerconfiguratie blijft in het projectmanifest, terwijl privé-identiteitskoppelingen en ontwikkeldatabases buiten de gepubliceerde momentopname van de broncode blijven.
Versie 0.23.2 laat projecten die ooit een gegenereerde publieke backendcontext hebben gecommit na strikte validatie weer publiceren, terwijl privékoppelingen, journals, databases en inloggegevens uit bereikbare geschiedenis nog steeds worden geweigerd. De latere release 0.23.4 verhelpt een sessiefout in persistente backends die een geldige goedkeuring via een extensie of signer op afstand kon weigeren wanneer iemand er enkele seconden over deed om te ondertekenen. Publieke hosts hebben ook de correctie voor gedeelde hosts nodig; alleen de CLI van een maker bijwerken heeft een uitgerolde host niet hersteld.
Dart NDK 0.10.0 bakent Blossom-authenticatie en ondertekening op afstand af
Dart NDK is een Flutter- en Dart-bibliotheek voor toegang tot Nostr-relays, ondertekening, walletverzoeken en mediabewerkingen. Na de prerelease van vorige week zorgt 0.10.0-dev.7 ervoor dat mediaverzoeken aan Blossom anoniem blijven totdat een server ze weigert, en autoriseert ze daarna via een expliciet beleid dat bepaalt welke identiteit een bewerking mag prijsgeven. Die autorisatie wordt door het hele verzoekpad meegegeven en vervangt de oudere opties useAuth en customSigner, een incompatibele integratiewijziging voor apps die de prerelease-API gebruiken.
Dev.9 houdt een antwoord van een signer op afstand niet langer vast totdat de traagste relay het bevestigt. Dev.8 vermindert het pollen van relays op de achtergrond en cachewerk; de overige correcties betreffen de persistentie van walletseeds en deadlines voor afwikkeling. De stabiele release 0.10.0 bundelt deze ontwikkelreeks nu samen met de hieronder beschreven wijzigingen voor verbindingsmetadata en privé-abonnements-ID’s. De vergelijking met dev.9 bevat die gemergede wijzigingen. Applicaties die upgraden, moeten zowel de API-wijziging voor media-authenticatie als het antwoordpad van de signer op afstand nalopen.
De stabiele release bevat NIP-46-verbindingsmetadata en aangevraagde machtigingen, waarbij afzonderlijke verbindingsvelden worden vervangen door een Nip46ClientMetadata-waarde. Dit is een API-wijziging in de broncode waarmee inlogwidgets de identiteit van de applicatie en de aangevraagde machtigingen aan de bunker kunnen doorgeven. Een andere wijziging in verzoek-ID’s gebruikt in productie 32 willekeurige hexadecimale tekens, zodat namen van use cases en pagineringsfasen niet in voor relays zichtbare abonnements-ID’s terechtkomen. Expliciete ID’s blijven begrensd tot de limiet van 64 tekens uit NIP-01, terwijl de debugmodus een korte diagnostische naam behoudt.
Mostro Core 0.16.0 verwijdert het oude gift-wrap-transport
Mostro Core levert het berichtenprotocol dat wordt gebruikt door de op Nostr gebaseerde peer-to-peer handelsclients en de coördinator van Mostro. Versie 0.16.0 verwijdert het gift-wrap-transport van protocol v1 en de oude functies om te verpakken en uit te pakken, waardoor het nieuwere transport het pad van de bibliotheek wordt. Dat is een incompatibele wijziging voor applicaties die via deze bibliotheek nog v1-berichten opbouwen of lezen.
De bibliotheekrelease gaat vooraf aan de inmiddels gepubliceerde release 0.19.0 van de coördinator. Operators die oudere clients bedienen, moeten beide kanten van de transportmigratie bijwerken. De voorafgaande tag 0.15.1 voegt een geschilstatus toe voor coöperatieve annulering, maar de verwijdering van het transport is de mijlpaal voor compatibiliteit.
Cambium 0.6.0–0.7.1 registreert een ontgrendeltelefoon via relayberichten
Cambium is een Android-companion voor ondertekening met een Heartwood-hardwaresleutel, die het bord na een herstart ook kan ontgrendelen. Met versie 0.6.0 kan een telefoon zich zonder USB-kabel via de Nostr-relays van het bord registreren voor ontgrendeling; de gebruiker vergelijkt vijf verzoekwoorden op de telefoon, het bord en Sapwood, de registratie-interface van het bord, voordat hij op de knop van het bord drukt. Nieuw aangekondigde relays krijgen een willekeurige vertraging bij het verbinden, zodat het eerste contact van de telefoon niet precies verraadt wanneer die de update van het bord zag.
Versie 0.7.0 draait de uitnodigingsflow om: een telefoon scant de kortlevende QR-code van Sapwood en stuurt één versleuteld, eenmalig event terug vanaf een wegwerpsleutel. Opnieuw proberen publiceert datzelfde event opnieuw als geen enkele relay het accepteert, terwijl het oude pad met een weergegeven code blijft bestaan voor oudere Sapwood-builds. De patch 0.7.1 houdt de laatste controlecode zichtbaar en verbetert de reproduceerbaarheid van F-Droid-builds; de QR-flow vereist nog steeds de opgegeven recente versies van Sapwood en Heartwood.
Bray 3.5.0–3.5.2 begrenst Nostr-walletuitgaven die door agents worden gestart
Bray is een Nostr-toolserver waarmee een AI-assistent via een afgebakende interface relay-, identiteits- en walletacties kan aanvragen. De release 3.5.0 voegt een limiet per Nostr Wallet Connect-betaling en een bewaard dagbudget toe, met menselijke bevestiging waar de host van de assistent dat ondersteunt. Het aanbieden van afzonderlijke verbindingen voor uitgaven vereist nu een expliciete instelling voor de walletdienst, controleert elke machtiging opnieuw vóór gebruik en beperkt het opzoeken van facturen tot hashes binnen die machtiging.
De release vraagt gebruikers ook om een verbindings-URI van een wallet in een privébestand te bewaren in plaats van die in de chat te plakken, en weigert een onzekere betaling opnieuw te proberen alsof het mislukken bewezen is. Versie 3.5.2 vergelijkt betaalmethoden in de marktplaats lokaal, nadat relays het gevraagde filter op betaalmethode weigerden. Deze controles begrenzen wat een gedelegeerde assistent kan uitgeven en voorkomen dat een aanname over relayfilters overeenkomende aanbiedingen verbergt.
Mafrend 1.3.0-alpha zet privé-kaartgroepen over op de huidige Marmot
Mafrend is een sociale Nostr-app op basis van een kaart, waarmee mensen plaatsen kunnen verkennen en rond bestemmingen kunnen chatten. De release 1.3.0-alpha zet privégroepen over op een nieuwere specificatie van versleutelde Marmot-groepen en voegt profielweergaven vanuit chats en recensies toe. Het groepsformaat is incompatibel met chats uit oudere alpha’s; gebruikers moeten dit behandelen als een alpha-migratie met een breuk in de compatibiliteit.
Dezelfde release voegt het delen van schermafbeeldingen en wijzigingen in de chat toe, naast verbeteringen aan de kaart en markeringen. Profielfuncties zijn volgens het project nog in ontwikkeling. De wezenlijke Nostr-wijziging is de verschuiving in de interoperabiliteit van privégroepen; gebruikers met oudere testgroepen moeten de compatibiliteitsnotitie lezen voordat ze upgraden.
Sonar alpha.15–alpha.15.1 herstelt publicatie in versleutelde groepen
Sonar is een privémessenger die gesprekken kan verzenden via een Bluetooth-mesh en Nostr. Alpha.15 voegt emojireacties op berichten toe en het privé delen van de lokale tijd binnen versleutelde chats, met een instelling om dat delen in te trekken. De wallet stapt over op Cashu, maar die betaalwijziging staat los van de update voor berichten.
Alpha.15.1 herstelt een fout bij het starten die de gespreksindex leeg kon laten nadat een build van een oudere branch een vreemde schemaversie had geschreven. Zonder de index versleutelde en publiceerde de app bij elke heropening opnieuw de gedeelde lokale tijd naar elke groep, soms met honderden events voordat snelheidslimieten van relays ingrepen. De hotfix bouwt die lokale status opnieuw op en stopt de herhaalde publicaties in groepen.
De commercepakketten van Elisym introduceren privé-Nostr-bestellingen
Elisym is een op Nostr gebaseerde toolkit voor agents die nu een commerceflow met ondertekende events bouwt. Het gemergede commerce-pakket definieert storeproducten, autorisatie door de eigenaar, privé verpakte bestellingen en ontvangstbewijzen, en verificatie van aanbiedingen voor de checkout- en verkopercomponenten. Een latere tag commerce 0.2.0 leidt de betalingsreferentie van een bestelling af van die bestelling, waardoor het opzoeken van de betaling aan de ondertekende aankoopflow wordt gekoppeld.
De pakketreeks introduceert ook afzonderlijk werk aan een betalingskern en een browsercheckout, maar de releasetags tonen niet aan dat er een volledige checkout voor verkopers is uitgerold. Het event-kind voor storeautorisatie is in de primaire bron van het project uitdrukkelijk voorlopig. De elf tags voor SDK, MCP, CLI en de betalingskern markeren één commercefunctie die in ontwikkeling is.
De nieuwe pakketreleases van Elisym verpakken de zelfgehoste verkopernode, terwijl MCP 0.31.0 buy_product en get_order toevoegt voor commerceproducten. Volgende releases van commerce en de verkopernode voegen ondersteuning voor Tempo-betalingen toe binnen diezelfde checkout. Deze pakketten brengen de bestaande integratie van ondertekende producten en privébestellingen verder; de lijst met tags maakt het voorlopige eventschema geen standaard en toont geen volledige lancering van een gehoste dienst aan.
Flotilla 1.11.2 maakt vastgelopen signers en onvolledige relayfeeds weer los
Flotilla is een Nostr-client voor gesprekken, ruimtes en gedeelde spaces. Versie 1.11.2 geeft een gebruiker een uitweg wanneer het opstarten blijft hangen op het wachten op een signer op afstand, en meldt een sessie af waarvan de lokale applicatiegegevens zijn gewist. Een ruimte kan nu haar berichten tonen voordat de bredere space klaar is met synchroniseren, terwijl feeds geen posts meer weglaten alleen omdat één relay later antwoordde dan een andere.
Dezelfde release publiceert ook een F-Droid-build die met de bestaande sleutel van de app is ondertekend en houdt GitHub-releases actueel voor Obtainium. Dat distributiewerk is van belang voor gebruikers die van updatekanaal wisselen, maar de correcties voor relays en signers zijn de directe reden om te upgraden.
Ditto 2.42.3 toont de bezorging op relays en verscherpt de grenzen tussen accounts
Ditto is een sociale Nostr-client waarmee gebruikers hun relays kunnen kiezen en zich ertegen kunnen authenticeren. In versie 2.42.3 toont Event Details van een post welke relays van de gebruiker en van de auteur de post bevatten; Broadcast richt zich alleen op de ontbrekende relays. De release wijst ook op leesrelays die niet reageren en geeft ze een knop om het opnieuw te proberen, waardoor een ontbrekende post makkelijker te diagnosticeren is zonder hem opnieuw overal heen te sturen.
De releasenotes vermelden dat het wisselen van account geen posts meer naar de relays van het vorige account stuurt, dat gedempte gebruikers geen algemene telefoonmeldingen meer kunnen veroorzaken en dat links of afbeeldingen in posts geen apparaten op het lokale netwerk van de lezer kunnen bereiken. Posts van trage relays verdwijnen niet langer uit de feeds Follows en Loved, terwijl chat bij livestreams en webxdc-spellen worden bijgewerkt zonder herhaaldelijk de hele weergave te downloaden. Bladeren door torrents en audio is ook nieuw, maar de routering via relays en de isolatie van accounts zijn de wijzigingen met de breedste impact op Nostr.
Iris Chat 2026.9.24.4 brengt gesprekken met spraak en video naar versleutelde chats
Iris Chat is een end-to-end versleutelde Nostr-messenger die de double-ratchetfamilie van chatprotocollen gebruikt. De release van 24 september voegt spraak- en videogesprekken met compatibele contacten toe, ook via een bestaande lokale verbinding wanneer internet niet beschikbaar is. Een gebruiker kan de videokwaliteit verlagen, een videogesprek als spraakgesprek beantwoorden en een inkomend gesprek afhandelen via de belinterface van Android; opnemen of weigeren laat ook de andere gekoppelde apparaten stoppen met overgaan.
Met de release kan iemand ook inloggen via een afzonderlijke ondertekeningsapp en zien welke gekoppelde apparaten verbonden zijn. Latere patches van 24 september behouden de oorspronkelijke tijdstempels van vertraagde berichten en verbeteren de bezorging in de buurt na een verloren pakket bij het opnieuw verbinden. Dit is vroeg gedrag voor gesprekken en het gebruik over meerdere apparaten, dus de update is vooral nuttig voor contacten die compatibele Iris-builds kunnen draaien.
De latere, door de ontwikkelaar ondertekende update van 30 september bewaart de lokale groepsgeschiedenis van een verwijderd lid terwijl verzenden wordt uitgeschakeld, verbetert de bezorging tussen gekoppelde apparaten en in grote groepen, en herstelt leesindicatoren en tellers voor ongelezen berichten. Gesprekken krijgen een keuze voor het audioapparaat en weer uitgaande kiestonen; een verouderde microfoonstatus dempt inkomende audio niet langer. Tijdelijk dempen, afbeeldingen kopiëren, bijlagen via slepen en neerzetten, routering van meldingen en registratie voor pushmeldingen krijgen correcties, terwijl afmelden lokale caches wist en het verwijderen van een apparaat de sessie ervan beëindigt. Een tweede update verbetert de toegang tot bestanden die door andere Iris-apps op hetzelfde apparaat zijn gecachet en houdt het lokaal delen van bestanden beschikbaar wanneer Nearby is uitgeschakeld.
LibreNostr 0.6.0–0.7.0 leidt relays via ingebouwde Tor
LibreNostr is een Android-client voor Nostr met configureerbare instellingen voor relays en privacy. Versie 0.6.0 bundelt op ARM64 een Tor-engine op basis van Arti en past de gekozen modus, Direct, Tor voor alles of alleen .onion, toe op WebSockets van relays, HTTP-verzoeken, media, uploads en webpagina’s. De strikte Tor-modus faalt gesloten wanneer Tor niet beschikbaar is en stuurt een verzoek nooit stilletjes rechtstreeks; bij het wisselen van modus worden relaysockets via de nieuwe route opnieuw verbonden.
Versie 0.6.2 voegt op het apparaat een web-of-trustfilter toe dat wordt opgebouwd uit publieke volglijsten, en kiest aanvullende relays op basis van de extra gevolgde mensen die ze bereiken. Versie 0.7.0 toont vervolgens notes en meldingen voordat het opzoeken van profielen en tellingen klaar is, begrenst trage relayquery’s en stopt met het ontsleutelen van de hele DM-inbox bij het openen van elk gesprek. Samen veranderen deze releases zowel waarmee de client verbinding mag maken als hoelang een trage relay de interface kan ophouden.
De door de ontwikkelaar ondertekende eerste stabiele release, 1.0.0, voegt opgeslagen tabletdecks per profiel toe met verplaatsbare kolommen voor feeds, hashtags, profielen, lange artikelen, meldingen en berichten. Tablets in liggende stand krijgen deze indeling; telefoons houden hun bestaande interface. Zoeken krijgt OR, uitsluitingen, mediafilters en werkende datumbereiken, geeft gecachete profielen terug vóór verfijningen van relays en gaat meteen verder wanneer full-text-verzoeken worden geweigerd. Hashtags worden chronologisch gesorteerd, paginering wacht op voldoende antwoorden van relays en ongebruikte feeds geven hun abonnementen vrij.
Dezelfde release behoudt bestaande publieke en versleutelde vermeldingen in mutelijsten en bladwijzers tijdens bewerkingen, in plaats van ze door één wijziging te vervangen. De release isoleert bladwijzers en meldingen tussen accounts en beperkt aanvullende relays van auteurs tot publieke leesacties, zodat privéverzoeken en relayauthenticatie er niet langs gaan. Ook voorkomt de release dat verouderde profielantwoorden nieuwere metadata vervangen, herstelt het paginering en badges van meldingen, behoudt het oudere feeditems wanneer er nieuwe binnenkomen en verhelpt het aftellers voor het ongedaan maken van reacties, dubbele publicatie, media-URL’s met querystrings en tellers voor ongelezen berichten nadat een chat als gelezen is gemarkeerd. Versie 1.0.1 verhelpt een crash bij het opstarten van de tabletdecks in de nieuwe indeling.
Newlay 0.3.45 streamt grote relayquery’s in plaats van ze af te sluiten
Newlay is een op Android gehoste Nostr-relay met bijbehorende lokale diensten. De ondertekende aankondiging van release 0.3.45 meldt dat grote queryresultaten nu met backpressure worden gestreamd in plaats van de verbinding van de client te sluiten. De ingebouwde Git-host ruimt na pushes vervangen packs op, terwijl de Cordn-coördinator voor versleutelde berichten te grote clientverzoeken accepteert en een abort-frame stuurt wanneer een probe een time-out krijgt.
De release geeft de Android-operator ook een live statuskaart voor events, opslag, adres en beheer, en lijnt de systeemeigen cryptografiebibliotheek uit voor apparaten met geheugenpagina’s van 16 KB. De wijzigingen aan de relay en de coördinator beslaan verschillende releases sinds de vorige versie in de store, 0.3.39; 0.3.45 is hun verpakte ijkpunt.
ngit-grasp 3.0.5 houdt Git-pushes en relaysynchronisatie in beweging
ngit-grasp is een zelfgehoste Nostr-relay en Git-server voor samenwerking aan ondertekende repository’s. De ondertekende aankondiging van release 3.0.5 haalt trage reconciliatie van de geschiedenis uit de gedeelde actor voor live synchronisatie, zodat relayabonnementen kunnen starten terwijl eerdere events worden gecontroleerd. De release neemt afzonderlijk gas terug bij snelheidslimieten, onvolledige geschiedenisquery’s, het lezen van mailboxen en het opzoeken van identiteiten, zodat een haperende relay niet langer alle capaciteit voor nieuwe pogingen opeist.
Dezelfde release reconcilieert tegen de lokale inventaris van events om opgeslagen geschiedenis niet opnieuw op te halen, en sluit onvolledige abonnementen voordat de dekking ervan als geverifieerd wordt behandeld. Aan de Git-kant accepteert de release pushes die de promotie van de achtergrondstatus al had toegepast, behoudt die de conflictbescherming voor gewijzigde refs en leest die tijdens uploads de voortgangsuitvoer van Git uit om een vastgelopen push te voorkomen. Die details zijn van belang omdat een repository live kan lijken op relays terwijl de Git-overdracht nog op een gezaghebbend resultaat wacht.
Armada 0.63.0 brengt pushmeldingen naar alle soorten signers
Armada is een Nostr-client voor versleutelde community’s, kanalen en privéberichten. Na de release voor mediaprivacy van vorige week beschrijft de ondertekende aankondiging van 0.63.0 een nieuw pushpad voor de browser dat werkt terwijl de app gesloten is, voor logins via een extensie en een signer op afstand en voor andere soorten accounts. Tenna, een host-app waarin Armada is ingebed, krijgt ook achtergrondmeldingen voor zijn gebruikers.
De release laadt oudere berichten in lange communitykanalen sneller en vermijdt dat de hele geschiedenis opnieuw wordt gelezen voor nieuwe berichten. Typindicatoren in privéberichten gebruiken minder relayverbindingen. Desktopupdates krijgen een prompt om opnieuw te starten, terwijl directe upgrades vanaf versies ouder dan 0.50.0 niet langer worden ondersteund.
Het ondertekende vervolg 0.63.1 voegt bewerkbare emojipakketten toe met import uit mappen en herschikking, haalt geciteerde berichten op buiten de geladen geschiedenis en maakt antwoorden die op relays worden gehost interoperabel. De versie vermindert het verkeer bij opnieuw verbinden op Android, haalt na lange onderbrekingen de achterstand in zonder oude meldingen te herhalen, sluit vermeldingen van vóór het toetreden uit en behoudt niet-bewerkte groepsvelden en privévermeldingen in serverlijsten. Verwijderingen in groepen die op relays worden gehost, vereisen nu de auteur van het bericht of een beheerder. Het slepen van servers, de verwerking van misvormde relayinformatie en abonnementen op repository’s krijgen ook correcties.
Versie 0.63.2 breidt Markdown in berichten uit met geneste citaten en lijsten, horizontale lijnen, codeblokken, onderstreepte koppen en opmaak over links of vermeldingen heen. Paginalinks van Tenor en Giphy worden als GIF’s afgespeeld. Synchronisatie van de leesstatus verstuurt minder gegevens, opnieuw verbinden vermijdt overbodige downloads en logins, en achtergrondmeldingen op Android pauzeren de relaysynchronisatie wanneer grote updates van instellingen die overspoelen.
deed 0.3.0–0.3.2 maakt publiceren naar Nostr vanuit Zig stabieler
deed is een commandlinetool in Zig om Nostr-events te lezen en te publiceren. De versie 0.3.2 van 24 september voegt een agentskill toe en herstelt deadlines voor relaypings; de voorafgaande releases 0.3.1 en 0.3.0 verbeteren de prestaties en de betrouwbaarheid van publicatie. De drie tags beschrijven één vroege reeks van de tool. Het zichtbare voordeel voor Nostr is een stabielere relayverbinding en een stabieler publicatiepad voor events voor scripts die de CLI gebruiken.
Cordn 0.5.1 houdt andere groepen in beweging wanneer een coördinator uitvalt
Cordn is een met MLS versleutelde groepsmessenger die Nostr-identiteiten en relays gebruikt om gesprekscoördinatoren te vinden. De ondertekende clientrelease 0.5.1 volgt op het werk aan de offline wachtrij van vorige week door de planning van coördinatoren en de outbox te scheiden: een onbereikbare coördinator vertraagt niet langer verzendingen voor andere groepen. Gevonden relayhints blijven na detectie bewaard, groepsdocumenten nemen ze mee tussen apparaten en een duurzaam record van openstaande publicaties herstelt gestrande verzendingen. Herstel over meerdere apparaten laat query’s voor de geschiedenisketen en voor hiaten overlappen terwijl de huidige configuratie wordt gelezen.
De release voegt ook bijlagen via slepen en neerzetten, vastgepinde groepen, profielnamen in previews en meldingen, en labels voor coördinatoren toe. De release herstelt de positionering bij het eerste ongelezen bericht, tellers voor ongelezen berichten, dubbele meldingen, previews van media en systeemberichten, antwoorden die aan media met een bijschrift zijn gekoppeld en zoomknoppen voor afbeeldingen. Systeemeigen downloads gebruiken een kiezer voor Opslaan als. Een signer die laat verschijnt, veroorzaakt geen onterechte waarschuwing meer over niet-ondersteunde versleuteling, en het wisselen van account botst niet langer met het vullen op de achtergrond.
Nymbot 1.0.7 voegt lokale documentverwerking en het versleuteld delen van chats toe
Nymbot is een assistent die bereikbaar is via versleutelde Nostr-berichten in een gift wrap. De door de ontwikkelaar ondertekende release 1.0.7 leest documenten op het apparaat, selecteert relevante passages wanneer een bestand te groot is om in zijn geheel te versturen, en geeft aan welke pagina’s zijn gebruikt. Gesprekken kunnen worden gedeeld via een end-to-end versleutelde link waarvan de toegang later kan worden ingetrokken. Antwoorden in Python en JavaScript kunnen lokaal worden uitgevoerd, waarbij de uitvoer naar het gesprek terugkeert.
Dezelfde release voegt onderzoek met bronvermelding toe, waarbij de prijs vóór het indienen wordt getoond, plus beeldbewerking, modelkeuze per bericht en uitgavenlimieten per chat en per bot. Externe tools die via MCP zijn verbonden, vragen om bevestiging voordat ze gegevens wijzigen. Runs op repository’s kunnen wijzigingen pauzeren voor beoordeling, CI-resultaten tonen en hervatten na een drukke gateway. Voorgestelde antwoorden, vastgepinde mededelingen, ingeklapte bronnenlijsten en een doorzoekbare modelkiezer maken de update compleet; deze claims komen uit de releasenotes van de ontwikkelaar; Compass heeft de privacy van de app niet onafhankelijk gecontroleerd.
0xchat 1.5.6 levert zijn correcties voor ondertekening en berichtauthenticatie
0xchat is een Nostr-messenger met privéchats, externe ondertekening en walletfuncties. Versie 1.5.6 levert de beveiligingscorrecties die vorige week als broncodemerges aan bod kwamen, waaronder authenticatie van gift wraps, configuratie van vertrouwde infrastructuur en toestemming voor ondertekening in ingebedde pagina’s. De versie dicht ook paden waarlangs de Tor-proxy kon worden omzeild, valideert TLS-certificaten voor hosts die geen onion-adres zijn en voorkomt dat releasebuilds mogelijk gevoelige inloggegevens en walletmateriaal naar de console van het apparaat schrijven. Optionele ontwikkelaarslogs blijven fouten vastleggen.
De release laat het opnieuw verbinden met relays oplopen van drie seconden tot vijf minuten, herstelt abonnementen na het opnieuw verbinden en bezorgt verzoeken die in de wachtrij stonden terwijl een relay verbinding maakte. Accountwissels stapelen geen dubbele relaylisteners meer op, een mislukte login laat het al actieve account intact en verbindingen met externe signers blijven bij het opstarten behouden. Mislukte verzendingen tonen nu foutmeldingen en behouden niet-verzonden tekst of herstelbare status voor het delen van tokens. Het ontsleutelen van sleutels bij het opstarten en het hashen bij uploads verhuizen van de UI-thread; caches voor chat en video vermijden herhaald renderen en downloaden. De release levert Android- en desktopbestanden met SHA-256-checksums, waaronder de door Play ondertekende Android-APK en een Windows-installatieprogramma dat uit de broncode is gebouwd.
Nostr Mail Client 0.17.0 verbergt mailboxacties voor relays
Nostr Mail Client wisselt e-mail uit via Nostr en ondersteunt daarnaast gewone e-mailbezorging. Na de release met transport per ontvanger en mediaprivacy van vorige week verbergt versie 0.17.0 de status voor gelezen, archief, mappen en labels, en de timing daarvan, voor relays, en kunnen gebruikers mail verwijderen zonder de afzender op de hoogte te brengen. De release vereist dat alle apparaten tegelijk worden bijgewerkt, omdat oudere clients de nieuwe status en verwijderingen niet zien. De versie beschermt ook Bcc-ontvangers in mail groter dan 32 KB, houdt lokale aliassen van contactpersonen uit uitgaande berichten, herstelt inloggen met een QR-code van Amber en publiceert openbare mail naar de leesrelays van de ontvangers.
De release voegt gekleurde mappen en labels toe met regels voor afzender, onderwerp en bijlagen; citaten bij beantwoorden en doorsturen; inline geplakte afbeeldingen; previews en hernoemen van bijlagen; en bereikselectie in maillijsten. Doorsturen behoudt de oorspronkelijke afbeeldingen en bijlagen, citaten in antwoorden starten ingeklapt en de webeditor krijgt een contextmenu. HTML-tabellen en inline afbeeldingen worden nauwkeuriger weergegeven, links in platte tekst werken en plannen ondersteunt datums tot vijf jaar vooruit. Namen en foto’s uit het adresboek verschijnen in de hele interface, en themakleuren bieden systeem-, voorgestelde of aangepaste paletten.
Dezelfde release houdt achtergronden die uit een bestand zijn gekozen lokaal en cachet gelinkte achtergronden, met een expliciete migratiekost: oudere achtergronden uit bestanden moeten op systeemeigen platforms opnieuw worden toegevoegd. De release wijzigt de standaardaanbevelingen voor relays en media, voegt het ontdekken van Nostr-apps toe tijdens de onboarding en in updatemeldingen, behoudt onbekende instellingen die door andere clients zijn geschreven en herstelt het onderbroken aanmaken van de mailopslag en de Linux-pakketten. Fouten bij het opstarten tonen nu details en een vooraf ingevuld rapport in plaats van een leeg scherm.
Nostr WoT 0.8.7 koppelt authenticatie aan de bestemming
Nostr WoT is een browserextensie die Nostr-ondertekening combineert met vertrouwenstools. Versie 0.8.7 vereist voor ondertekende HTTP-authenticatie via NIP-98 toestemming voor de exacte URL, query, methode, het account en de herkomst van het verzoek. Oudere, brede goedkeuringen vereisen opnieuw toestemming. Relayauthenticatie via NIP-42 heeft een afzonderlijk, aan het account gebonden machtigingssysteem, waarbij sitespecifieke weigeringen voorrang krijgen op gedeelde toestemmingen voor relays. Authenticatieverzoeken moeten afkomstig zijn van een geverifieerde browserherkomst op het hoogste niveau, en het wachten op goedkeuring of ontgrendeling leidt tot een nieuwe controle van account en toegang.
De release verifieert handtekeningen van NIP-46 op afstand en het volledige goedgekeurde event, zodat een teruggestuurde handtekening niet stilletjes andere inhoud of een andere bestemming kan inruilen. Het inrichten van de wallet en adreswijzigingen gebruiken authenticatie die aan de body is gebonden, eenmalige backend-challenges en afzonderlijke transactietokens; algemene ondertekening voor websites kan die interne wallettokens niet aanmaken. De compatibele backend moet eerst worden uitgerold, en de client weigert terug te vallen op uitgefaseerde endpoints. Nostr Wallet Connect-betalingen verifiëren ook een teruggestuurde betalingspreimage tegen de hash van de gevraagde factuur en behandelen een mismatch als een onbekende uitkomst.
In de verzoekinterface kunnen gebruikers volledige ruwe events bekijken, specifieke verzoeken binnen een sitegroep kiezen en privéberichten lokaal bekijken zonder goed te keuren dat ze naar een website worden teruggestuurd. Lokale previews verbergen zichzelf na 30 seconden; inkomende verzoeken blijven niet aangevinkt, en gewone bulkgoedkeuring sluit authenticatie uit. De extensie scheidt toestemmingen voor relays per site en voor alle sites, begrenst het cachen van geverifieerde profielen, beslist bij vervangbare events met dezelfde tijdstempel op basis van de laagste event-ID en houdt het lezen van publicaties in de startpop-up lokaal. Chrome en Firefox krijgen afzonderlijk geverifieerde pakketten en geserialiseerde workflows voor het indienen van stabiele releases; die workflows bewijzen niet dat de extensie momenteel in de stores beschikbaar is.
De gedeelde runtime van Iris houdt de geschiedenis van relays en peers consistent
nostr-pubsub levert een gedeelde runtime voor Nostr-events met persistente eventopslag en een wachtrij voor uitgaande publicaties. Versies 0.5.7–0.5.13 bundelen exacte abonnementen, spelen ze opnieuw af na het opnieuw verbinden, houden lokaal, relay- en peerbewijs gescheiden en melden onvolledige geschiedenis wanneer duurzame opslag faalt. Voltooide query’s wachten tot elk ontvangen event de toelating heeft doorlopen. De standaardbatch voor relays bevat nu hoogstens 20 OR-filters voor compatibiliteit met gangbare servers, terwijl batches voor peers onafhankelijke matching en annulering behouden.
De runtime-updates van Hashtree vervangen netwerkcode die specifiek was voor workers door die gedeelde runtime, persistente eventindexen en een uitgaande wachtrij, zodat events en gecachete bestanden één FIPS-node kunnen delen. FIPS TypeScript 0.0.44–0.0.45 kiest routes met voldoende capaciteit voor volledige signaleringsrecords, herstelt een weggevallen sessie-opzet binnen de deadline van de handshake en probeert WebRTC-antwoorden pas opnieuw na een expliciete weigering van de routering. Grotere routes met WebSocket-framing vereisen compatibele systeemeigen peers; de notes van 0.0.44 vereisen dat eerst de systeemeigen FIPS 0.4.85 wordt uitgerold.
Iris Kit 0.2.5 voegt een persistente applicatieclient voor gewone events en transportneutrale ondertekening via NIP-46 toe, met behoud van accountsleutels en offline leesacties. Versie 0.2.6 geeft een al geverifieerde volledige event-ID meteen terug vanuit de worker of de systeemeigen backend; query’s op prefixen en vervangbare events wachten nog steeds op de geschiedenis voordat de laatste waarde wordt gekozen. Dit zijn bibliotheekreleases, en de notes tonen niet aan dat ze in elke Iris-applicatie zijn uitgerold.
De broncode-update van Iris Meet van 30 september vervangt de NDK-integratie door persistente publish/subscribe-infrastructuur en gedeelde identiteitssigners. De patch voegt testdekking toe voor offline herstel van identiteiten, ondertekening via NIP-07 en isolatie van vergaderruimtes. De bestaande vergaderapp gebruikt Nostr voor versleutelde signalering en WebRTC voor audio en video. Dit is voortgang in de implementatie op de standaardbranch; de repository heeft geen release met tag die aantoont dat deze specifieke update de live site heeft bereikt.
Chama verspreidt het annuleren van aanbiedingen en achtergrondmeldingen
Chama gebruikt ondertekende events voor handel binnen community’s en privégesprekken. Versies 6.4.14–6.4.16 publiceren een ondertekende annulering voordat een aanbieding lokaal wordt verwijderd, zodat andere clients hetzelfde gecachete aanbod kunnen intrekken. Wake-tags voor de ontvanger worden nu met events meegestuurd, ongeacht de meldingsinstelling van de afzender, en de meldingsserver dedupliceert op basis van het ondertekende event, zodat een chat direct na een toetreding nog steeds een wake kan veroorzaken. Achtergrondtaken spelen getroffen transacties opnieuw af vanaf opgeslagen cursors, isoleren mislukte ketens en ontsleutelen meldingstekst lokaal; de release vereist dat de bijbehorende watcher opnieuw wordt uitgerold.
De gegroepeerde releases passen verlengingen door deelnemers ook toe op de tijdstippen van hun ondertekende events, zetten financieringsvergrendelingen in quarantaine die zijn gemaakt nadat een plaats was verlopen, en bieden herstel voor de opgeslagen bearer note. Het publiceren van een claim wacht op een bevestigde import of betaling. Filters voor aanbiedingen behouden de valuta van de kijker over communitybereiken heen, en transactiekoppen gebruiken het definitieve gezamenlijke bedrag. Deze wijzigingen zorgen ervoor dat twee met Nostr verbonden clients dezelfde conclusies trekken uit dezelfde eventgeschiedenis.
Earthly 0.1.12 voegt herbruikbare kaartconfiguraties toe
Earthly is een collaboratieve Nostr-kaarteditor met ondertekende publicatie en versleuteld delen. Versie 0.1.12 voegt herbruikbare GMapper-configuraties toe voor openbare Google My Maps, het ontdekken van door ontwikkelaars gemaakte Maplets, privéopslag of openbare publicatie van configuraties, en het kopiëren van geometrie met bronvermelding. Dezelfde release voegt het versleuteld delen van verbindingen, het neerzetten van entiteiten via slepen en chatnavigatie op mobiel toe. De beschikbaarheid van exports uit Google en CORS in de browser beperken het importeren, uitvoerbare gedownloade Maplets blijven in Tauri onbeschikbaar en upgradecontroles op fysieke Android-apparaten staan nog uit.
Het werk aan configuraties migreerde bestaande publicatieadressen en voorkeuren en voegde het beoordelen of intrekken van configuratie-updates toe. De eerste Android-workflow faalde vóór het compileren; een correctie in de tooling bereidde de release voor die daarna werd getagd.
Mostro 0.19.0 faseert zijn transport van de eerste generatie uit
Mostro coördineert peer-to-peer transacties via Nostr. Versie 0.19.0 levert nu de verwijdering van het gift-wrap-transport van de eerste generatie, dus clients moeten het nieuwere protocol gebruiken. De bestaande tijdstempeltags voor het aanmaken van bestellingen en het openen van geschillen zijn hernoemd naar published_at zonder hun opgeslagen waarden te wijzigen; de created_at van het omringende event blijft het tijdstip van ondertekening. Herstelantwoorden geven de handelssleutel van de tegenpartij terug, geaccepteerde create- en take-bewerkingen herkennen handelssleutels, en publicatie naar relays is voltooid bij de eerste positieve bevestiging van een relay. Dezelfde release werkt deadlines en annulering voor borgsommen bij, sluit geschillen wanneer een transactie wordt afgehandeld, brengt de bemiddelaar op de hoogte en begrenst hoe verouderd doorgegeven prijzen mogen zijn.
De correctie voor de toelating van handelssleutels van Mostro herkent een sleutel zodra een introducerende bestelling of een geschil is vastgelegd. Nodes met een strengere proof of work voor het eerste contact konden voorheen een legitiem vervolgbericht laten vallen tot de periodieke vernieuwing van bekende sleutels; nodes met gelijke standaarddrempels werden niet getroffen. Een geschiltransactie legt de statusovergang van de bestelling en de geschilrij atomair vast, waarmee fouten door inconsistente status worden voorkomen. Meldingen bij afsluiting sturen de toegewezen bemiddelaar naar beste vermogen een privébericht wanneer de gebruikers een geschil zelf oplossen, waarbij het bestaande vervangbare event de offline terugval blijft.
SCRUTINY Lens brengt beveiligingsonderzoek naar Nostr
SCRUTINY Lens v0.1.0, de eerste openbare release op 29 september, is een browserclient voor beveiligingsmetadata die via Nostr wordt gepubliceerd. Analisten kunnen zoeken op CVE, pakket- of certificaat-ID’s, eventgeschiedenissen en intrekkingen bekijken en verbanden verkennen in een onderwerpgraaf. De browser verifieert handtekeningen en ID’s van events. Optioneel zoeken en uitleggen met AI gebruikt een endpoint dat de gebruiker kiest; de app controleert geciteerde bronvermeldingen tegen de onderliggende events. De releasenotes beschrijven de beperkingen van relays expliciet en noemen lokale buildafhankelijkheden die nog naastgelegen repository’s vereisen.
Mangatsu en Noteds komen naar Android
Mangatsu v0.1.11 maakt deel uit van de eerste Android-releasereeks van deze lezer en uitgever van strips deze week. De broncode voegt inloggen met Amber toe via NIP-55, de Android-interface om een externe signer te vragen Nostr-bewerkingen goed te keuren. Strips en hoofdstukken zijn Nostr-events, terwijl hun pagina’s op Blossom-servers staan; de lezer ondersteunt ook een versleutelde opgeslagen bibliotheek en offline lezen. Latere commits pakken het aanroepen van de signer en het vernieuwen van relaylijsten aan.
Noteds v0.1.2 brengt een Nostr-marktplaats voor rubrieksadvertenties via Tauri naar Android. De integratie met Android-signers gebruikt ondertekening via NIP-55 op Android. De app publiceert aanbiedingen en berichten via Nostr en bouwt een lokale zoekgraaf met categorieën, geografische gebieden en optionele embeddings in de browser. De nieuwste broncode herstelt systeemeigen locatietoegang voor zoeken in de buurt. Beide projecten zijn vroege releases; hun releasepagina’s op GitHub bevatten geen gedetailleerde notes, dus deze mogelijkheden komen uit de README’s bij de tags en uit implementatiecommits.
Statim combineert Nostr-DM’s met andere netwerken
Statim v0.4.0 volgt op de eerste release van 23 september. De broncode bij de tag beschrijft een messenger met Nostr-DM’s via NIP-17 naast XMTP, Status, Telegram en Matrix. Accounts beginnen met een lokaal bewaarde herstelzin; elk gesprek geeft aan welk protocol het gebruikt, omdat die netwerken verschillende privacy-eigenschappen bieden. Op Android ontbreekt de Telegram-integratie nog. Dit zijn de gedocumenteerde mogelijkheden van het project, geen onafhankelijk geteste garanties of bevestiging van beschikbaarheid in app-stores.
In ontwikkeling
Amethyst herstelt de interoperabiliteit van versleutelde groepen
Amethyst is een Android-client voor Nostr met ondersteuning voor versleutelde Marmot-groepen. White Noise is een andere Marmot-messenger; een interoperabiliteitsbatch die met de clients van White Noise is getest pakt groepsbeheer, de formulering bij verwijderingen en ander gedrag aan dat aan het licht kwam wanneer de twee clients een gesprek delen. Gerichtere correcties sturen reacties en verwijderingen binnen de Marmot-groep in plaats van als afzonderlijke privéberichten in een NIP-17-gift wrap, en passen bewerkingen uit een andere client na een herstart toe. Dit zijn broncodemerges; de tests die in de PR’s worden beschreven, zijn beperkter dan een gepubliceerde release die tussen clients is getest.
Een afzonderlijke merge van de groepsruntime en interface voor Cordn voegt een ander pad voor versleutelde groepen toe via coördinatorservers. Cordn staat los van Marmot, dus de twee wijzigingen moeten niet worden gelezen als één transportmigratie.
Amethyst heeft ook relay-opdrachten via HTTP in zijn Geode-relay en Quartz-client gemerged onder zijn NIP-FE-voorstel, en een interface voor het beoordelen van back-upconflicten voor vervangbare profiel- en lijstevents. NIP-FE is terminologie uit het projectvoorstel; met de back-upflow kan iemand versies vergelijken voordat een vervanging wordt geaccepteerd, en voorkomt het dat lokale status stilletjes wordt overschreven.
Amethyst ontwikkelt ook Concord, een afzonderlijk protocol voor versleutelde community’s dat door Armada en Accordion wordt gebruikt. Een conformiteitsbatch voegt gefragmenteerde communitylijsten, pinbewijzen, sleutelrotatie en records voor opheffing toe, gevolgd door verdwijnende berichten en directe uitnodigingen. Een uitnodiging blijft in een privé-inbox tot ze wordt geaccepteerd; het ontvangen ervan maakt geen contact met de relays van de community. Dezelfde wijziging corrigeert een vergelijking van auteurs waardoor de verwijdering van een andere auteur een bericht kon verwijderen. Correcties tussen clients herstellen de serialisatie van niet-ondertekende rumors, ontbrekende velden in uitnodigingen, het aanmaken van community’s met bevestiging door relays en toetreden zonder herstart; de gerapporteerde emulatortests betroffen live peers met Armada en Accordion.
Een latere implementatie van privékanalen roteert kanaalsleutels na relevante intrekkingen van toegang en voegt knoppen toe om kanalen aan te maken, privé of openbaar te maken en van nieuwe sleutels te voorzien. Ook voegt de implementatie coöperatieve kicks met rangcontrole toe en laat bijlagen van berichten samen met hun bovenliggende berichten verlopen. WebXDC-updates kunnen in een afzonderlijke kanaalbuffer terechtkomen, maar Amethyst heeft nog geen host voor WebXDC-applicaties. Die latere batch meldt tests voor het wire-formaat en unittests, zonder uitvoering op een apparaat of tegen live relays, dus het eerdere interoperabiliteitsresultaat certificeert niet elke nieuw toegevoegde functie.
De MLS-engine van Quartz bewaart nu overgeslagen geheimen van berichtgeneraties na een herstart, zodat berichten die in de verkeerde volgorde binnenkomen ontsleutelbaar blijven na het herstellen van een opgeslagen status. Vier bewaarde eerdere epochs laten aanroepers late applicatieberichten authenticeren, hun geauthenticeerde gegevens bewaren en voorkomen dat een verbruikte generatie opnieuw wordt geopend. Een update van de secret tree laadt niet-uitgebreide nodegeheimen uit een status in de stijl van ts-mls; afzenderspecifieke fouten voor verouderde generaties onderscheiden een botsing in de eigen ratchet van een client van een replay door een ander lid. De PR zegt uitdrukkelijk dat de bestaande terugval van Marmot op bewaarde epochs gescheiden blijft, dus dit is een mogelijkheid van de engine en geen bewijs dat elk berichtpad in Amethyst haar gebruikt.
Een audit van de tag-readers in Quartz herstelt privé-geohashvermeldingen die in leesbare tekst konden worden gepubliceerd en een parser die de privésleutel uit een nsec als publieke sleutel behandelde. Ook worden repostadressen, doelen voor het verbergen van kanalen, root-tags van liveruimtes en adresseerbare mint-events hersteld. De verouderde ForkTag-reader wordt verwijderd, wat een API-wijziging in de broncode oplevert voor gebruikers van Quartz; al bestaande SQLite-rijen voor mints hebben nog een afzonderlijke migratie nodig. Aanvullende eventmodellen dekken de voorstellen van Buzz voor projectcontainers, artefactrevisies en teams, terwijl modellen voor videoweergaven en versleutelde pushbediening de schema’s van Divine volgen; deze toevoegingen leggen ondersteuning voor parsen en opbouwen vast, geen volledige clientinterfaces of aangenomen genummerde NIPs.
De client geeft ook Ultra HDR-foto’s weer in de feed en de schermvullende viewer op Android 14 of nieuwer. Android 15 en nieuwer begrenzen de helderheidsboost in de feed op tweemaal het gewone bereik, terwijl de schermvullende weergave het volledige bereik van het scherm kan gebruiken; de gerapporteerde testapparaten draaiden nieuwere Android-API’s, waardoor Android 14 en 15 ongetest blijven. Een merge van gedeelde UI en een uploadpoort brengt 140 schermen onder in gemeenschappelijke code voor Android en desktop en haalt mediawerk op Android van de UI-thread. De audit bij deze merge herstelt ook de foutrapportage bij het verwijderen van metadata, waardoor de refactor meer is dan het verplaatsen van bestanden.
Divine voegt versleutelde video toe aan privéberichten
Divine is een Nostr-videoclient. NIP-17 verzendt privéberichten in versleutelde gift wraps die de afzender voor relays verbergen. Het gemergede werk aan videoberichten van Divine versleutelt een bijgevoegde video op het apparaat, uploadt de versleutelde tekst en stuurt de ontsleutelingssleutel mee in dat privébericht. Een ontvanger kan het bestand verifiëren en ontsleutelen om het af te spelen of op te slaan. Een afzonderlijke correctie voor het herstellen van de geschiedenis voorkomt dat een dubbelzinnige weigering door een relay het herstel voortijdig beëindigt terwijl andere relays nog kunnen antwoorden.
De correctie voor uitgefaseerde moderatiesleutels van Divine weigert uitgefaseerde sleutels bij het bepalen van moderatielabels en kiest de huidige ontvanger van meldingen wanneer een melding wordt ingediend. Openstaande meldingen die aan een uitgefaseerde sleutel zijn gericht, worden omgeleid naar de vastgepinde sleutel van de build, en onopgeloste gesprekken blijven onbeschrijfbaar. De wijziging onderscheidt ook het beheer van uitgefaseerde sleutels bij het bepalen welke historische threads een minderjarige mag lezen; updates van dat beheer vereisen nog steeds een applicatierelease. Cacheverwerking voor verwijderde reacties voorkomt dat een succesvol verwijderde recente reactie opnieuw verschijnt wanneer een thread opnieuw wordt geladen.
Voor makers toont een live opnamemodus met kleurmasker de vervangende achtergrond al vóór het opnemen van een take, en maskeren van witte muren voegt via de videoplugin maskering toe die op helderheid reageert. Ondertitels per woord behouden herkende woordtimings en gebruiken bij benadering bepaalde timing wanneer de server alleen hele cues levert. Verder werken aan stop-motion voegt nieuwe stilstaande beelden toe in het tempo van de bestaande compositie, terwijl losgemaakte clips terugzetten, gegroepeerde lettertypekeuze en snelheidsvoorinstellingen bewerkingsknoppen toevoegen zonder het Nostr-eventformaat te veranderen.
Uitlijning bij vierkante export en het vervolg voor kleinere clips houden tekst en stickers op hun plaats bij clips met verschillende resoluties. HLS-weergave van derden voorkomt een heapcrash op Android door bij lusgrenzen terug te spoelen in plaats van herhaalde geïmporteerde playlists vooraf te bufferen; die lussen kunnen bij elke herstart kort pauzeren. Het opnieuw laden van accountvoorkeuren houdt aan het account gebonden filters op hun standaardwaarden bij een wissel en herstelt daarbij een deel van een assertion bij het inloggen in de debugmodus. Een afzonderlijk probleem met het vernieuwen van moderatielabels blijft open, dus de PR claimt niet dat elke inlogfout is opgelost.
Buzz breidt de kanaal- en identiteitscontroles van zijn relay uit
Buzz is een op Nostr gebaseerde werkruimte met een eigen relay en clients. De gemergede implementatie van kanaalartefacten geeft een bewerkbaar record één thuiskanaal en een revisieketen; conflicterende bewerkingen kunnen niet allebei de kop worden. Het label NIP-AR van het project verwijst naar het eigen voorstel en de eigen implementatie, niet naar een gevestigde Nostr-standaard.
Voor beschermde HTTP-toegang koppelt een andere gemergede wijziging een gefedereerde identiteitsverklaring aan dezelfde sleutel die door autorisatie via NIP-98 wordt bewezen. NIP-98 definieert ondertekende events voor HTTP-authenticatie; de NIP-FI-verklaring van Buzz is een projectspecificatie. Buzz heeft ook HPKE-versleuteling voor back-upenveloppen van geheime sleutels gemerged. Die PR legt beveiligingswerk op broncodeniveau vast; distributie naar elke client blijft ongeverifieerd.
Buzz desktop 0.5.26 bevat het werk aan kanaalartefacten, systeemeigen HPKE-versleuteling van back-ups van geheime sleutels en een beheerconsole voor de relay op desktop. De gedeelde wijzigingen herstellen verzoeken voor niet-vermelde projectkanalen, synchroniseren zijbalksecties, sortering, sterren en dempingen tussen apparaten, begrenzen het lezen van lange threads en verscherpen identiteitsverklaringen voor Blossom. De notes voor de hele repository vermelden daarnaast het koppelen van relayidentiteiten, bezorging van vermeldingen aan companions, configureerbare push-URL’s, atomaire administratieve verwijdering en contextuele namen op mobiel. Een desktoprelease legt de distributie voor desktop en gedeelde code vast; ze bewijst niet dat die mobiele wijzigingen in een mobiele build zijn uitgebracht.
De handhaving van NIP-FI via WebSocket in Buzz controleert een gefedereerde identiteitsverklaring voordat frames worden geaccepteerd, en vereist daarna dat de Nostr-sleutel ervan overeenkomt met de sleutel die is geauthenticeerd via NIP-42, waarmee een client zijn identiteit aan een relay bewijst. Een sessie verloopt op het vroegste moment van het verlopen van het token, de maximale leeftijd van de verklaring en de geconfigureerde levensduur van de verbinding; na het verlopen laat ze geen nieuw effect meer toe. Deze projectspecifieke NIP-FI-modus staat standaard uit. Al toegelaten audiocommits en het opzetten van abonnementen kunnen nog steeds wachten op een vastgelopen afhankelijkheid, dus de wijziging legt geen universeel begrensde tijd voor het verbreken van de verbinding vast.
Voorbereiding van verwijdering door de eigenaar leidt door de operator geattesteerde verzoeken via een automatische goedkeuring die aan een inventaris is gebonden naar de bestaande uitvoerder van verwijderingen. Een vervolg in de relay zorgt ervoor dat het opnieuw proberen van hetzelfde verzoek de huidige status teruggeeft en reserveert het actieve quotum van de eigenaar tot de verwijdering is voltooid; permanent bewaarde host-tombstones tellen mee voor een levenslange limiet van 20 community’s. Dit zijn administratieve wijzigingen op broncodeniveau, en het vervolg instrueert operators om verwijdering uitgeschakeld te laten tot de relay en de drain-uitvoerder live zijn. Daarnaast detecteert een audit van de partitiecatalogus catch-all-partities en niet-gedekte maanden voordat nieuwe partities voor events en bezorglogs worden aangemaakt, waardoor de veiligheid van het serveren en de actualiteit van audits voor operators zichtbaar worden.
Buzz mobile maakt nu onderscheid tussen mensen en agents met dezelfde weergavenaam. De resolver voor identiteitsnamen kwalificeert agents aan de hand van hun eigenaar en voegt alleen waar nodig een kort sleutelachtervoegsel toe; integratie in gesprekken gebruikt die namen voor auteurs, vermeldingen en lidmaatschapsmeldingen. Lijsten, zoeken en Pulse maken hetzelfde gedrag buiten een gesprek compleet. De zichtbare kwalificatie wijzigt het lokale label, terwijl een geselecteerde vermelding de oorspronkelijke wire-naam van de identiteit behoudt.
Conduit zet de checkout voort na acceptatie door een relay
Conduit is een Nostr-marktplaats die privé-bestelberichten naar verkopers stuurt. Progressief publiceren naar relays onderscheidt de eerste positieve bevestiging van een relay van het afronden van alle relaypogingen, en een vervolg voor de checkout slaat die eerste bevestiging op voordat het proces verdergaat. Acceptatie door een relay betekent dat de ondertekende bestelling een relay heeft bereikt; het bewijst niet dat een verkoper de bestelling heeft gelezen of uitgevoerd.
Conduit heeft ook herstelbare sessies met signers op afstand en transactionele onderhandeling over signer-relays gemerged. Met NIP-46 kan een applicatie handtekeningen aanvragen van een sleutel die door een afzonderlijke signer wordt bewaard; deze wijzigingen behouden de accountwerkruimte van een gebruiker terwijl het transport wordt hersteld, en verifiëren daarna het exacte account voordat het proces wordt hervat. De PR’s leggen gedrag van de broncode vast, geen uitgebrachte checkout-build.
De merge voor gerangschikt zoeken naar producten van Conduit stuurt één gewone full-text-zoekquery via NIP-50 voor producten van kind 30402 en behoudt de relevantievolgorde van de relay door handtekeningcontroles, reconciliatie van revisies en lokale filtering op geschiktheid heen. Kaarten kunnen verschijnen voordat het lezen van exacte producten op de achtergrond klaar is, terwijl nieuwere ondertekende verwijderingen gezaghebbend blijven. Vernieuwen en Opnieuw proberen blijven binnen zoeken en het lezen van exacte producten, in plaats van een brede catalogusverkenning te starten. Een limiet van 100 resultaten gevolgd door lokale filtering kan geschikte resultaten missen, dus een gedeeltelijk leeg antwoord biedt herstel aan en bewijst niet dat er geen producten zijn.
Elisym bouwt een Nostr-checkout voor commerce
Elisym ontwikkelt een commercetoolkit die producten ondertekent en privéberichten voor bestellingen en ontvangstbewijzen via Nostr verzendt. Het gemergede commercepakket definieert verificatie van aanbiedingen en bestelevents in een gift wrap; een checkoutinterface verwerkt het beoordelen van aanbiedingen, walletbetaling en de bezorgstatus, terwijl een zelfgehoste verkopernode de kant van de winkel verpakt. Het project noemt kind 30490 voorlopig en beschrijft een minimale versie voor oktober. Deze broncodemerges leggen een opkomende integratie vast; een geaccepteerde Nostr-standaard voor commerce of een volledige openbare lancering is niet aangetoond.
De checkouttools voor agents van Elisym voegen buy_product en get_order toe voor de producten die het via Nostr aankondigt. De eerste aanroep geeft een offerte terug zonder te bestellen, en een tweede aanroep accepteert de eenmalige offerte en de waarschuwingen voor dezelfde agent en hetzelfde netwerk; de bestelstatus wordt duurzaam bewaard in de lokale bestandsbackend van de agent. Ondersteuning voor checkout met Tempo voegt een betaalpad via een browserwallet toe met verificatie door de verkoper en bezorging. Een verzonden transactiehash houdt de poging actief tot de uitkomst vaststaat, zodat er geen onbetaald resultaat ontstaat terwijl een broadcast nog kan worden afgewikkeld.
Een latere correctie voor de checkout laat de checkout voor ondertekende producten initialiseren wanneer een browserwallet zich tijdens de detectie meteen aankondigt. De broncodewijziging verplaatst de sessiedeclaratie naar vóór het moment waarop die callback kan draaien; de merge alleen verifieert geen gehoste uitrol.
nostter verbetert controles van signers en het ophalen van events
nostter is een sociale Nostr-client. De gemergede wijziging voor signer-mogelijkheden controleert of er een bruikbare signer aanwezig is voordat volg- en reactieacties worden aangeboden. Nieuwe pin-tags bevatten de sleutel van de auteur en een bekende relayhint zonder er een te raden, en de cachevolgorde voor vervangbare events volgt de tijdstempel en de beslissing op event-ID uit NIP-01. NIP-01 definieert de kernregels voor Nostr-events, waaronder hoe clients kiezen tussen vervangbare events.
Pensieve bereidt geïsoleerde reconciliatie van archieven voor
Pensieve is een archief- en hersteltool voor Nostr. De gemergede geïsoleerde negentropy-runtime geeft synchronisatie een begrensde worker en duurzaam afrondingsgedrag. De functie is optioneel en de PR zegt uitdrukkelijk dat er geen productiedienst of -configuratie is geactiveerd; dit is voorbereidend werk voor een veiliger herstelpad, geen bewijs van een draaiende uitrol.
ContextVM voorkomt dubbele aanroepen via meerdere relays
De TypeScript-SDK van ContextVM verzendt verzoeken voor tools en resources als Nostr-events. De gemergede correctie voor deduplicatie van inkomende verzoeken herkent één verzoek in platte tekst aan de event-ID, ook wanneer meerdere relays of een herverbinding het opnieuw bezorgen, net als bij het bestaande pad voor verpakte berichten. De PR meldt dat vóór de correctie één niet-idempotente tool drie keer draaide voor een enkele aanroep. Een bijbehorende wijziging voor resourcemeldingen stuurt updates alleen naar geabonneerde clients; geïnitialiseerde sessies zonder abonnement ontvangen ze niet langer.
Cyberspace herziet de objectregels van DECK-0003
Cyberspace ontwikkelt het DECK-0003-formaat voor gestructureerde Nostr-objecten en versleutelde regiobags, dat Amethyst in het nummer van vorige week begon te implementeren. Nieuwe regels voor onderdelen en verborgen objecten en bagverwijzingen laten een bag verwijzen naar een afzonderlijk gepubliceerd object in plaats van elk onderdeel in te bedden. Een latere correctie stelt dat een verwijzing via een event-ID een oude versie van een adresseerbaar event niet betrouwbaar kan vastpinnen, omdat een relay die na vervanging kan weggooien. Lezers moeten de gecorrigeerde regel voor coördinaatverwijzingen gebruiken; de formulering van de eerdere merge is achterhaald.
Wisp herstelt antwoorden op Nostr-reacties
Wisp is een Nostr-client met functies voor relayroutering en een wallet. Na de uitgebrachte ondersteuning voor reacties via NIP-22 van vorige week zorgt een gemerged vervolg ervoor dat een antwoord op een NIP-22-reactie ook een reactie-event is, met de juiste verwijzingen naar de bovenliggende reactie en de root; het vorige pad publiceerde altijd een gewone note. Met NIP-22 kunnen reacties aan veel soorten Nostr-inhoud worden gekoppeld. De correctie werd gemerged na de tag 1.2.5 van Wisp, waarvan de notes alleen het versienummer ophogen, dus dit is voortgang op broncodeniveau waarvan de release nog niet is geverifieerd.
Cordn stuurt locaties van coördinatoren naar een tweede apparaat
Cordn coördineert versleutelde groepsberichten via Nostr. De gemergede specificatiewijziging voor meerdere apparaten neemt de relayhints voor coördinatoren van een groep op in het gerepliceerde groepsdocument. Een nieuw ingericht apparaat kan dan een coördinator vinden die niet op de standaardrelays staat, in plaats van schijnbaar lid te worden van een groep waarvan het de achterstand en live berichten niet kan ophalen. Dit is werk aan het protocoldocument na de release van Cordn met de offline wachtrij van vorige week, geen nieuwe clientrelease.
Nostr Atlas opent een directory voor controleerbare identiteiten
Nostr Atlas is een nieuwe directory die Nostr-profielen toont naast claims op externe accounts. De gemergede publicatie van de site scheidt de directory van de componentdemo van het project, en de site reageert publiek. Met een merge voor de claimflow kan de eigenaar van een X-account met een browsersigner een ondertekend bewijs via NIP-39 publiceren, terwijl profielverrijking Nostr-metadata van kind 0 pas leest nadat het bewijs is geverifieerd. NIP-39 definieert het patroon voor bewijzen waarmee een Nostr-sleutel aan een andere online identiteit wordt gekoppeld; een bevestiging door een relay alleen markeert een claim niet als geverifieerd.
nostr-java voegt tools voor mediahosting toe en behoudt de posities in tags
nostr-java is een Java-bibliotheek en MCP-toolset voor Nostr-applicaties. Met de gemergede Blossom-tools kan een aanroeper media die via een hash worden geadresseerd uploaden, vinden, opsommen en verwijderen, en de serverlijst van de gebruiker beheren. Een afzonderlijke correctie voor publiceren houdt lege tagwaarden op hun plaats: Nostr-tags zijn positioneel, dus het weglaten van een lege relayhint kon een markering naar het verkeerde veld verschuiven en het gepubliceerde event laten afwijken van de goedgekeurde preview.
Zap Cooking verandert hoe de accountgeschiedenis kan worden hersteld
Zap Cooking is een Nostr-client voor het delen van recepten. Het gemergede herstelwerk voor Lazarus vervangt een back-up op basis van applicatiespecifieke data-events via NIP-78 door een aanpak die door relays bewaarde versies van vervangbare events doorzoekt om overschreven follows, dempingen of profielen te detecteren. Lazarus blijft een conceptprotocol; herstel hangt af van relays die de oudere versies hebben bewaard, en een gemergede PR voor een webclient is geen garantie dat elk verloren event kan worden hersteld.
De client heeft ook optionele bediening voor proof of work via NIP-13 voor notes en antwoorden gemerged, en een bijlagemodel dat de volgorde van media en beschrijvingen volgens NIP-92 consistent houdt tussen preview en publicatie. Met NIP-13 kan een afzender lokale rekenkracht aan een event besteden voordat het wordt gepost; NIP-92 neemt mediametadata op als eventtags.
De correctie voor NIP-05-claims van Zap Cooking vereist autorisatie via NIP-98 over de exacte body van het verzoek en weigert een signer die afwijkt van de publieke sleutel die de naam claimt. Voorheen accepteerde dat publieke endpoint niet-geauthenticeerde claims die de naam van een ander lid konden vervangen. Het lidmaatschapsniveau komt nu uit het bestaande lidmaatschapsrecord, en gebruikers van een signer op afstand krijgen bij het claimen een verzoek om te ondertekenen. Het afzonderlijke, vertrouwde registratiepad aan de serverkant blijft ongewijzigd.
Een herstel van de mutelijst voorkomt dat dempacties op profielen de hele lijst van kind 10000 vervangen door alleen tags met publieke sleutels. Het vorige pad wiste vermeldingen voor woorden, hashtags en threads en de versleutelde inhoud, en één onderdeel kon ontsleutelde privé-mutesleutels openbaar opnieuw publiceren. Het nieuwe pad leest de kopie op de relay, behoudt niet-gerelateerde tags en versleutelde tekst, en weigert te publiceren wanneer dat lezen niet lukt. Het verwijderen van een privédemping vereist ontsleuteling en opnieuw versleutelen via de signer.
Opal brengt ondertekening op afstand naar Omarchy
Opal is een Nostr-signer voor desktop die is gebouwd voor de Linux-omgeving Omarchy. De versie 0.3.3 van 28 september volgt op de eerste openbare reeks met ondersteuning voor ondertekening op afstand via NIP-46, een lokale keyring en een machtigingsinterface voor verzoeken van verbonden apps. NIP-46 houdt de accountsleutel bij de signer, terwijl een afzonderlijke client die vraagt bewerkingen goed te keuren. Dit is een vroege release van een platformspecifieke signer, geen claim van bredere ondersteuning op desktop.
WatchTower opent een NIP-86-bedieningspaneel voor relays
WatchTower is een nieuw gepubliceerd paneel voor relaybeheer via NIP-86, het protocol voor geauthenticeerde verzoeken voor relaybeheer. Een openbare instantie reageert, wat operators een plek geeft om de interface te bekijken. De repository is op 22 september aangemaakt; een bereikbare site toont niet aan dat de autorisatieflows onafhankelijk zijn gecontroleerd of dat het paneel met elke relay-implementatie werkt.
Hubstr Blossom opent een persoonlijke mediabron
Met de nieuw gepubliceerde Hubstr Blossom-server kan een Nostr-client afbeeldingen, video en bestanden uploaden naar een zelfgehost Blossom-endpoint en die URL’s vervolgens in events plaatsen. De README documenteert lokale opslag op basis van inhoudshashes, een SQLite-index, ondertekende autorisatie via kind 24242 voor wijzigingen en een reeks Blossom-bewerkingen voor uploaden, spiegelen, opsommen en verwijderen. Dankzij openbare leestoegang kunnen andere clients geposte media weergeven zonder uploadrechten te krijgen.
De gedocumenteerde opties van de server halen ook bestandsmetadata op voor NIP-94-events, die gedeelde media beschrijven. De server kan afbeeldingen opnieuw coderen zonder EXIF-metadata en beschermt spiegelverzoeken standaard tegen doelen in privénetwerken. Dit is een nieuw gepubliceerde implementatie met uitrolinstructies, geen bewijs van een brede uitrol in productie.
Hubstr Relay publiceerde zijn eerste broncode op 24 september. De relay combineert een persoonlijke SQLite-cache voor events met een openbare relay: niet-geauthenticeerde lezers zien toegestane openbare events, terwijl via NIP-42 geauthenticeerde tenants hun cache kunnen lezen. NIP-17-gift wraps blijven onbereikbaar voor gastlezers. De update van 25 september corrigeert records die worden teruggegeven door de NIP-86-methoden voor pubkey-lijsten.
Meshstr experimenteert met een permissieloze mesh van relays
Meshstr is een alfa-ontwerp waarmee Nostr-relays budgetten voor peers kunnen onderhandelen en ondertekende gebruiksbewijzen kunnen uitwisselen. De eerste implementatie bevat een brug voor het schrijfbeleid van strfry, een Nostr-relay, toegevoegd op 27 september, met een socketcorrectie de dag erna. De repository beschrijft onderhandeling via DIDComm en reconciliatie via NIP-77, waarmee peers sets van events kunnen vergelijken zonder hun volledige inventaris uit te wisselen, naast verifieerbare meldingen van peers die overeengekomen budgetten overschrijden.
Die projectregels zijn een voorstel, geen aangenomen NIP of aangetoond openbaar relaynetwerk. De concrete voortgang deze week is het gepubliceerde codepad dat het schrijfbeleid van een relay verbindt met de voorgestelde boekhouding van de mesh.
Dossier laat zien wat een openbare Nostr-geschiedenis kan prijsgeven
Dossier is een nieuwe zelfaudittool in de browser voor iemands voetafdruk op Nostr en Lightning, met een openbare demo. De tool verzamelt zichtbare profiellinks, sporen van zaps, tijdstippen van posts, metadata uit oude versleutelde privéberichten via NIP-04 en mediametadata zoals EXIF van foto’s; de tool kan ook tonen waar een relay nog een event serveert dat iemand probeerde te verwijderen. Met ondersteuning voor signers via NIP-07 kan een gebruiker opruimacties autoriseren zonder een privésleutel in de pagina te plakken.
De gedocumenteerde beperkingen van het project zijn van belang: een scan ziet alleen de relays die hij bereikt, en een verwijderingsverzoek kan kopieën die elders worden bewaard niet wissen. De repository verscheen op 27 september en heeft geen release met tag; de demo en de broncode leggen een vroege tool vast, geen volledige inventaris van iemands eerdere activiteit.
Marmot MDK breidt polls, aangepaste emoji en accountmetadata uit
Marmot MDK levert de runtime en bindings voor versleutelde groepsberichten op Nostr. Latere broncodemerges in MDK stellen gepagineerde pollkeuzes per stemmer beschikbaar volgens dezelfde regels voor geldige antwoorden als bij geaggregeerde tellingen. Optionele groepscomponenten die eigendom zijn van de applicatie geven hosts door beheerders beheerde instellingen die het bewaarbeleid voor berichten overleven en nieuwkomers in hun Welcome bereiken. Getagde verzendingen en mediareacties nemen metadata voor aangepaste emoji mee door de runtime en de bindings, bewaren ontsleutelingsmateriaal voor bijgevoegde reactieafbeeldingen na een epochwissel en weigeren vervalste bijlagetags. Die wijziging breidt de C-structuur voor uploadverzoeken uit, dus C-gebruikers moeten opnieuw bouwen tegen de header.
Een correctie in de convergentie houdt berichten in behandeling wanneer er geen canonieke branch is geselecteerd, in plaats van ze ongeldig te verklaren zonder de live status te proberen. Een bijbehorende opruiming van onbereikbare paden leidt onopgeloste gestagede commits naar het bewaarde gedrag voor nieuwe pogingen. Lezen van versleutelde media stemt de HTTP-leestime-out af op de afhandeling van inactiviteit bij hervatbare bodies, wat vastgelopen grote overdrachten aanpakt zonder te claimen dat de openstaande acceptatietest op een apparaat voor inkomende APK’s is geslaagd. Markeringen voor opstartfasen tonen bij welke stap van het openen van een account een time-out optrad, wat diagnostisch bewijs toevoegt zonder te claimen dat het onderliggende vastlopen bij het opstarten is opgelost.
De lokale agentconnector voegt ook bestaande profielmetadata samen bij het publiceren van een update van kind 0, zodat velden behouden blijven die het verzoek wegliet. Updates van groepsprofielen stellen wijzigingen van de naam en beschrijving van een groep beschikbaar via het bestaande pad dat door de huidige beheerder wordt geautoriseerd. De socketauthenticatie geeft nog steeds toegang tot de hele lokale API; deze merge voegt geen machtigingen per principal toe. Deze broncodewijzigingen volgen op de getagde release 0.11.0.
rust-nostr koppelt COUNT-antwoorden van relays aan hun verzoek
rust-nostr, een Rust-bibliotheek en SDK voor Nostr-applicaties, heeft gekoppelde COUNT-antwoorden en duidelijkere fouten voor wachtende aanroepen gemerged. De SDK abonneert zich voordat COUNT wordt verzonden en accepteert alleen het overeenkomende antwoord, waardoor een verloren of gesloten ontvanger niet langer als een legitieme nul kan verschijnen. Ook blijven ontvangerfouten behouden voor publicatiebevestigingen en relayauthenticatie, zodat aanroepers een ontbrekende bevestiging kunnen onderscheiden van een expliciete weigering. Publieke methodesignaturen blijven ongewijzigd.
ZapTracker voegt statistieken over het Nostr-netwerk en citaten toe
ZapTracker is een dashboard voor makers over betrokkenheid op Nostr en walletactiviteit. Een merge voor het netwerkdashboard vervangt statistieken over het Lightning-netwerk door gegevens over online Nostr-relays van nostr.watch en informatie over mogelijkheden uit NIP-11-documenten. Een wijziging voor citaatstatistieken telt events van kind 1 met q-tags mee naast likes, reposts, bladwijzers en zaps. Hiermee zien makers citaten terug in inhoudsrangschikkingen en betrokkenheidsgrafieken; het blijft bewijs uit gemergede broncode.
LaWallet NWC leidt opwaarderingen van kaarten naar de kaartwallet
LaWallet NWC verbindt Lightning-wallets met applicaties via Nostr Wallet Connect. De merge voor het opwaarderen van BoltCards kondigt een LUD-19-betaallink aan die via de NWC-methode make_invoice van de kaartwallet een factuur aanmaakt. Geblokkeerde, uitgeschakelde of niet-gekoppelde kaarten kondigen geen betaallink aan, en het pad leidt opwaarderingen niet om naar het afzonderlijke Lightning-adres van de eigenaar. Een vervolg toont dezelfde link in de emulator en neemt notities van betalers die door de ontvanger worden geaccepteerd mee bij LNURL-verzendingen.
Een nieuwe khatru-relay biedt moderatiebediening voor de eigenaar
nostr-relay-khatru publiceerde zijn eerste broncode op 29 september als algemene relay die is afgeleid van de stopgezette implementatie die specifiek voor HiveScope was. De openbare instantie serveert een NIP-11-document dat deze repository noemt en authenticatie, het verlopen van events, beschermde events, tellen, reconciliatie en relaybeheer aankondigt. Een implementatie van 30 september voegt moderatiebediening toe aan het paneel van de eigenaar. De openbare metadata verifieert een uitgerold endpoint, niet dat elke aangekondigde methode met succes is getest.
Een lokale web-of-trustbouwer houdt ontvolgen bij
etemiz/wot publiceerde op 30 september een web-of-trustcrawler voor Nostr. De crawler leest volglijsten en NIP-65-relaylijsten, berekent vertrouwen vanuit configureerbare roots en schrijft scores naar LMDB voor relaybeleid, feeds en spamfilters. De projectdocumentatie legt de afweging uit: live updates verhogen vertrouwen, terwijl geplande volledige crawls verlagingen en ontvolgingen toepassen. Scores hangen af van de gekozen roots. Dit is nieuw gepubliceerde broncode, zonder release met tag of claim van een uitrol in productie.
Moyu opent een Marmot-client voor werkruimtes
Moyu heeft de broncode gepubliceerd van een chatclient voor werkruimtes in Rust die is gebouwd op Marmot, met een commandline-, terminal- en desktopinterface. De wijzigingen van 30 september gebruiken lokaal vastgelegde lidmaatschapswijzigingen om te voorkomen dat oude toetredingsverzoeken verwijderde leden opnieuw toelaten, laten uitnodigingscodes na zeven dagen verlopen en laten beheerders ze intrekken. Terminaluitvoer filtert stuurtekens en overschrijvingen van de tekstrichting die door andere leden worden aangeleverd. Een vastgepinde fork van MDK leidt overdrachten van Blossom-bijlagen via de geconfigureerde SOCKS5-proxy, waarbij de hostnaamresolutie door die proxy wordt uitgevoerd. De wijzigingen voor 0.3.0 staan in de openbare broncode; er is nog geen openbare releasetag of releasevermelding beschikbaar.
Protocol- en specificatiewerk
NIP-39 breidt identiteitsbewijzen uit naar Bluesky en Discord
Met NIP-39 kan een Nostr-account verwijzen naar een bewijs dat het een identiteit op een ander platform beheert. Een wijziging die op 27 september is gemerged geeft nieuwe bewijzen één aanbevolen zin en vraagt verificateurs om oudere bewijzen te accepteren die de npub van het account bevatten, ook wanneer de formulering afwijkt. De wijziging documenteert ook posts op Bluesky en berichten op Discord als locaties voor bewijzen. Een claim op Discord kan alleen worden gecontroleerd door iemand die de server kan lezen waarop het bericht is geplaatst.
NIP-86 voegt beheer van uitnodigingscodes toe voor relaybeheerders
Compass beschreef in het nummer van 8 juli het NIP-86-voorstel voor uitnodigingen toen het nog openstond; het is nu gemerged. NIP-86 definieert een standaard-API voor relaybeheer, en NIP-43 definieert hoe besloten relays lidmaatschap aankondigen en toelatingsverzoeken verwerken. De merge van 24 september voegt listclaims, createclaim en deleteclaim toe, zodat een beheerder uitnodigingscodes die een relay accepteert kan opsommen, uitgeven en intrekken. Dat geeft operators een beheerpad voor uitnodigingen die een lid na het toetreden een rol kunnen geven; het verplicht niet elke relay om de methoden te ondersteunen.
Een correctie op de NIP-86-berichtgeving van vorige week: de gemergede specificatie voegde unallowevent, unbanevent, listallowedevents en listdisallowedkinds toe. Het eerdere item noemde namen uit een verouderde beschrijving van het voorstel. De eerste twee methoden draaien een besluit op eventniveau om iets toe te staan of te verbieden terug; de andere bekijken toegestane events en niet-toegestane kinds.
NIP-51 verplaatst favoriete follow sets naar een ongebruikt event-kind
NIP-51 definieert openbare en privélijsten, waaronder een lijst met de favoriete follow sets van een gebruiker. Compass beschreef het voorstel over de kind-botsing in het nummer van 22 juli; het is nu gemerged. De correctie van 27 september wijst die favorietenlijst kind 10021 toe, omdat het eerdere nummer al in gebruik was. De a-tags verwijzen nog steeds naar follow sets van kind 30000. De wijziging lost een botsing van nummers in de specificatie op; ze creëert geen nieuwe manier om mensen te volgen.
NIP-51 stelt verborgen antwoorden per thread voor
Met een open NIP-51-voorstel zou de auteur van een thread een openbare set verborgen antwoorden kunnen publiceren die meewerkende clients achter een schakelaar tonen. Het voorstel gebruikt één adresseerbaar event van kind 30027 per thread, met de root-ID als d-tag en e-tags die antwoorden noemen; alleen een set die door de auteur van de root is ondertekend, geldt. Het opnemen van de root vraagt clients om antwoorden van andere auteurs te verbergen en geen invoerveld voor antwoorden meer aan te bieden, terwijl antwoorden nog steeds op relays kunnen worden gepubliceerd. Het formaat per thread beperkt bewerkingsconflicten tot hetzelfde gesprek. De auteur meldt een implementatie in Nostrich, maar inspectie van de openbare broncode kon die niet bevestigen; het voorstel is nog niet gemerged en het formaat van de set staat nog ter discussie.
NIP-DB stelt geverifieerde domeinnamen voor diensten met sleuteladressen voor
Het open NIP-DB-voorstel, ingediend op 28 september, beschrijft Nostr-events die een gewoon internetdomein koppelen aan de sleutel die het bedient via een netwerk met sleuteladressen, zoals FIPS, een versleutelde mesh die nodes adresseert via hun openbare Nostr-sleutel. Een domeineigenaar kan de koppeling vastleggen met een DNS TXT-record of een DNSSEC-bewijs dat met de claim wordt meegestuurd; clients zouden een geverifieerd resultaat vastpinnen voor later offline gebruik. Het voorstel verbiedt uitdrukkelijk resolutie via een niet-geverifieerde claim, omdat iedereen in een Nostr-event het domein van een ander kan claimen. fips-pub-domains is de referentie-implementatie van de auteur, maar de nummers van de event-kinds en een deel van de formulering die specifiek is voor de overlay worden nog beoordeeld. De gerapporteerde end-to-endtests zijn bewijs van de auteur, geen claim dat het voorstel een geaccepteerde NIP is.
Een concept voor privéfeeds verkent versleutelde groepen ontvangers
Een nieuw voorstel voor een envelop voor meerdere ontvangers, geopend op 29 september, schetst privénotes, antwoorden en connecties waarvan de beoogde ontvangers een event kunnen vinden zonder hun gewone openbare sleutels in de zichtbare tags bloot te geven. Het stelt ondoorzichtige alias-tags per paar voor, afgeleid van gedeelde geheimen, en voorlopige event-kinds, waaronder een manier om een ander Nostr-event voor honderden lezers te verpakken. Dat zou kleine privéfeeds een directer ophaalpad kunnen geven dan het sturen van een afzonderlijk bericht naar elk lid.
De auteur van het voorstel noemt dit uitdrukkelijk werk in uitvoering. Het concept heeft geen aangetoonde implementatie of beveiligingsbeoordeling, en de toewijzing van kinds en de ondertekeningsregels op byteniveau staan nog open.
Een Blossom-voorstel laat anderen gespiegelde media aankondigen
Een open NIP-voorstel beschrijft een manier waarop iemand die de Blossom-blob van een andere auteur spiegelt die kopie via Nostr kan aankondigen. Een client zou dan naar de kopie kunnen zoeken als de oorspronkelijke server de blob kwijtraakt. In de discussie is ook voorgesteld om de actuele BUD-03-serverlijst van de spiegelaar te controleren wanneer een aangekondigde serverhint verouderd is. Dit is een voorgesteld detectiepad, geen garantie dat clients of archiefrelays al reserveopslag bieden.
Meldingen van verkeerssituaties zoeken een gedeeld Nostr-formaat
Het open voorstel Road Event Reports beschrijft meldingen en bevestigingen voor kuilen, afsluitingen, camera’s en andere omstandigheden op de weg. Het gebruikt locatietags en de vervaltijdstempel van NIP-40, die relays vertelt wanneer ze moeten stoppen met het serveren van een event, zodat een melding niet onbeperkt actueel hoeft te blijven. De auteur baseerde herzieningen op een steekproef van events die van openbare relays zijn teruggehaald en op de bestaande Roadstr-clients voor het melden van verkeerssituaties, maar het concept laat een vraag over compacte codering nog open, en het voorgestelde NIP-nummer is niet aangenomen.
Marmot heroverweegt coördinatie tussen meerdere apparaten
Het herontwerp voor meerdere apparaten van Marmot vervangt een niet-geïmplementeerd concept voor External Commit door een niet-normatieve uitleg om vroege feedback te verzamelen. De nieuwe richting verkent hoe een bestaand apparaat een nieuw apparaat goedkeurt, het in gesprekken opneemt en later apparaten verwijdert, terwijl open vragen zichtbaar blijven. ID’s die door het verwijderde concept waren gereserveerd, komen vrij omdat geen enkele implementatie ze heeft overgenomen. Het ideeëndocument wijst geen nieuwe ID’s of wire-formaten toe en is geen geïmplementeerde functie voor meerdere apparaten.
Zes jaar Nostr in september
Het laatste septembernummer is een kans om na te gaan hoe Nostr is gegroeid van schetsen naar een grotere verzameling interoperabele tools. Een prototype voor ritmatching uit 2021 gebruikte ondertekende events om een dienst te coördineren; vijf jaar later zijn de formulering van identiteitsbewijzen en botsingen tussen lijst-kinds het soort details dat beheerders oplossen. Daartussen leerden clients gesprekken, media en herstel te presenteren op manieren die gewone mensen kunnen gebruiken. De gedateerde bronnen hieronder tonen fasen in die ontwikkeling. Ze tonen niet aan dat elk experiment is gelanceerd of dat elk oud ontwerp nog steeds wordt aanbevolen.
September 2021: vroege experimenten met bruikbare vormen
Een BUber-commit van 4 september verkende een concept voor het matchen van taxiritten met Nostr-events. Het liet zien hoe een ondertekend verzoek dat via relays wordt verzonden mensen kon coördineren zonder de hele dienst aan één server toe te wijzen. De bron is een concept en toont geen gelanceerde taxidienst aan.
Later die maand bood de broncode van Loquaz van 23 september een prototype voor chatten op desktop. Dat was een nieuwe vroege poging om relayberichten aan te laten voelen als een gewone applicatie. De bron toont geen afgeronde end-to-endversleuteling of messenger voor productie aan; de blijvende draad is de zoektocht naar een bruikbare gespreksinterface bovenop eenvoudige events. BUber testte het matchen van ritten en Loquaz testte chatten; beide gebruikten ondertekende events voordat er gangbare patronen voor clients waren ontstaan. Die proeven legden twee terugkerende problemen voor latere clients bloot: coördineren via relays en events presenteren als een bruikbaar gesprek.
September 2022: chat en gedelegeerde acties komen in de specificaties
De NIP-28-wijziging van 10 september beschreef openbare chatkanalen met berichten en metadata die clients samen konden interpreteren. NIP-28 maakte van een gedeelde ruimte een expliciet onderwerp van het protocol en gaf clients een gemeenschappelijke conventie voor kanalen.
Op 23 september documenteerde de tekst van NIP-26 over gedelegeerd ondertekenen een manier waarop één sleutel een andere kan machtigen om beperkte events te ondertekenen. Die tekst legde een belangrijke ontwerpvraag uit 2022 vast: hoe gebruik je een Nostr-identiteit zonder de primaire sleutel aan elke applicatie te geven? NIP-26 is inmiddels gemarkeerd als unrecommended, dus dit is het verslag van een experiment en geen advies voor nieuwe integraties. De latere status laat zien hoe het ondertekeningsmodel is verschoven: een specificatie kan een bruikbare probleemstelling bewaren, ook wanneer het voorgestelde antwoord is uitgefaseerd.
September 2023: clients worden volwassen rond relaydetectie en metadata
Damus is een sociale Nostr-client. De changelog van 21 september vermeldde werk aan de lokale Nostr-database, zoeken en navigatie via hashtags. Die wijzigingen maakten een drukke sociale feed op een telefoon makkelijker om door te bladeren en te herstellen; de gedateerde changelog is bewijs voor die clientrelease, niet voor elke latere mogelijkheid van Damus.
Ook de protocoldetails waren in beweging. Een wijziging van 26 september in NIP-24 verduidelijkte optionele velden voor profielmetadata, terwijl de wijziging in NIP-65 van 29 september de normalisatie en deduplicatie van relay-URI’s aanpakte. NIP-65 vertelt clients hoe ze de relays publiceren die ze gebruiken om te lezen en te schrijven; een consistente behandeling van URI’s helpt die lijsten naar dezelfde relay te laten verwijzen, ook wanneer strings op onschuldige manieren verschillen. Die kleine conventie bracht het ontwerp van clients dichter bij betrouwbare detectie: de events van een persoon vinden hangt ervan af dat je weet waar ze worden gepubliceerd.
September 2024: posts krijgen rijkere context
De releasenotes van Damus van 22 september beschreven ondersteuning voor highlights en reacties via NIP-84. NIP-84 geeft lezers een manier om een passage uit een lang stuk te citeren en te bespreken. Het werk in de client laat zien hoe een protocolidee iets werd dat mensen tijdens het lezen konden gebruiken.
Intussen kreeg NIP-34 een wijziging op 20 september die onderwerpen en labels van issues verfijnde voor samenwerking aan git via Nostr, en kreeg NIP-73 diezelfde dag een wijziging die ID’s voor externe inhoud verfijnde. Dit zijn afzonderlijke specificatiewijzigingen: de ene helpt de issues van een repository hun structuur te behouden, de andere laat een event verwijzen naar materiaal buiten Nostr. Beide vergroten de betekenis die een client kan behouden wanneer inhoud zich verplaatst tussen community’s, repository’s en andere media.
September 2025: toegangscontrole en betalingscontext worden preciezer
Een herziening van NIP-42 op 6 september pakte relayauthenticatie voor meerdere gebruikers aan. Met NIP-42 kan een relay een client uitdagen om te bewijzen welke Nostr-sleutel een verzoek doet; de update was van belang voor diensten die meer dan één geauthenticeerd account via dezelfde verbinding bedienen.
Een update van NIP-47 op 15 september voegde optionele betalingsmetadata toe aan verzoeken via Nostr Wallet Connect. Met NIP-47 kan een app een wallet vragen om acties via Nostr uit te voeren. Meer context kan een interactie met een wallet begrijpelijk maken, maar de metadata kan gegevens van de betaler blootgeven, dus clients en wallets moeten haar nog steeds als gevoelig behandelen. De wijziging illustreert hoe werk aan interoperabiliteit inmiddels ook ging over wat een ontvanger te weten kan komen, niet alleen over de vraag of een verzoek kan worden bezorgd.
September 2026: details van interoperabiliteit ontmoeten openbare identiteit
Deze september verplaatste een gemergede NIP-51-wijziging het event-kind voor follow sets weg van een botsing. NIP-51 definieert lijsten die iemand kan bijhouden en delen; unieke event-kinds laten clients het ene lijsttype van het andere onderscheiden. Een eerder nummer van Compass besprak het voorstel, terwijl de merge in september de statuswijziging is.
Een tweede gemergede wijziging in NIP-39 verduidelijkte de tekst van bewijzen en voegde meer manieren toe om een extern account aan een Nostr-identiteit te koppelen. NIP-39 gaat over controleerbare identiteitsclaims, niet over een centraal identiteitsregister. Samen laten de twee merges zien dat het huidige protocolwerk zich richt op de kleine details die bepalen of onafhankelijke clients dezelfde identiteits- en lijstevents correct interpreteren. Ze tonen ook een verschuiving van het uitvinden van nieuwe eventcategorieën naar het verminderen van dubbelzinnigheid in bestaande.
Over deze zes septembermaanden heen is het patroon een ontwikkeling van het aantonen dat een ondertekend event een applicatieverzoek kan beschrijven naar de vraag hoe een client een claim over een persoon verifieert. De oude prototypes zijn van belang omdat ze de vragen blootleggen die latere specificaties en clients moesten beantwoorden: wie ondertekent, waar is een event te vinden, wat betekent het en hoe weet iemand of hij het kan vertrouwen? Daarom kan een kleine, precieze correctie in het protocol net zo belangrijk zijn als een nieuwe interface.