<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
     xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
     xmlns:content="http://purl.org/rss/1.0/modules/content/"
     xmlns:podcast="https://github.com/Podcastindex-org/podcast-namespace/blob/main/docs/1.0.md">
  <channel>
    <title>Nostr Compass Podcast</title>
    <description>Weekly conversations with the developers building on Nostr. Companion podcast to the Nostr Compass newsletter covering NIP proposals, client updates, relay developments, and protocol changes.</description>
    <link>https://podcast.nostrcompass.org</link>
    <language>en-us</language>
    <copyright>2025-2026 Nostr Compass. CC BY 4.0</copyright>
    <managingEditor>nostrcompass@nostrcompass.org (Nostr Compass)</managingEditor>
    <webMaster>nostrcompass@nostrcompass.org (Nostr Compass)</webMaster>
    <pubDate>Sun, 19 Jul 2026 01:40:18 GMT</pubDate>
    <lastBuildDate>Sun, 19 Jul 2026 01:40:18 GMT</lastBuildDate>
    <ttl>60</ttl>

    <!-- iTunes/Apple Podcasts tags -->
    <itunes:title>Nostr Compass Podcast</itunes:title>
    <itunes:summary>Weekly conversations with the developers building on Nostr. Companion podcast to the Nostr Compass newsletter covering NIP proposals, client updates, relay developments, and protocol changes.</itunes:summary>
    <itunes:author>Nostr Compass</itunes:author>
    <itunes:owner>
      <itunes:name>Nostr Compass</itunes:name>
      <itunes:email>nostrcompass@nostrcompass.org</itunes:email>
    </itunes:owner>
    <itunes:image href="https://nostrcompass.org/assets/images/profile.png" />
    <itunes:category text="Technology" />
    <itunes:explicit>no</itunes:explicit>
    <itunes:type>episodic</itunes:type>

    <!-- Podcasting 2.0 tags -->
    <podcast:guid>npub1wav4fae3gyfy3xj298kxj2mj8phavz7vavps34przq02j7w902qq902923</podcast:guid>
    <podcast:medium>podcast</podcast:medium>
    <podcast:locked>no</podcast:locked>

    <podcast:funding url="/about">Support the show</podcast:funding>

    <podcast:value type="lightning" method="lnaddress">
        <podcast:valueRecipient name="Nostr Compass" type="lnaddress" address="nostrcompass@npub.cash" split="100" />
      </podcast:value>

    

    
    <item>
      <title>Nostr Compass Podcast #29</title>
      <description>FIPS v0.4.0 mixnet mesh, Whitenoise Linux Marmot desktop, CustID NIP-46 vault, myco nsite sharing, NIP-44 limit lift, NIP-86 and NIP-89 dives.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwwpnxumrqdecxccrjwfdwfmx7wrfd4ergaqdy6x9y</link>
      <pubDate>Sat, 11 Jul 2026 09:06:26 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1783760786099-rvo8imr4t</guid>
      <enclosure url="https://blossom.primal.net/beec66393de447b81850e5ae2b4b15307987e9af6972e07763549f5b1b11a607.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>46:41</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/81db8e0ab8b6bc5ff13759268ae001fac31aca30d31221373e3ab0d4d5fa3ad5.png" />
      
      
      <content:encoded><![CDATA[### News

- **0:16 — FIPS v0.4.0**
  FIPS v0.4.0 ships Nym mixnet outbound transport, opt-in mDNS/DNS-SD LAN discovery, a data-plane overhaul with per-peer crypto workers, hitless FMP/FSP rekey under packet loss, a rewritten fipstop TUI, Prometheus show_metrics, and OpenWrt apk plus Nix flake packaging, all wire-compatible with v0.3.0.

- **6:40 — Whitenoise Linux desktop client**
  Whitenoise Linux is a desktop Marmot client in Rust and Slint with a single password-encrypted vault. A protocol proposal moves message effects from inline dmfx: body markers to dedicated kind 9 sidecar events referencing the parent message.

- **10:04 — CustID mobile identity vault**
  CustID v0.1.10-beta stores multiple Nostr identities in hardware-backed secure storage, acts as a NIP-46 remote signer, and answers physical access challenges over NFC and QR, dropping background NIP-65 keep-alive in favor of signing-notification sockets only.

- **11:42 — myco peer-to-peer nsite sharing**
  myco v0.1.0 shares NIP-5A nsites peer-to-peer over a FIPS mesh with BLE L2CAP transport, per-peer speedtests, NFC-triggered sharing, and Zapstore distribution.

- **16:29 — Nostr Codex Phone**
  Nostr Codex Phone v0.1.122 controls a local Codex coding-assistant worker over encrypted Nostr DMs from Android, with multi-repo sessions, voice transcription, Blossom uploads, and optional spoken responses, sibling to CodeDeck from #28.

- **17:23 — Coop Mobile**
  Coop Mobile v0.2.1 and v0.2.2 are the first versioned builds of a NIP-17 encrypted DM client for Android, tightening crash safety around message parsing and QR handling and wiping stored data on logout.

- **17:51 — Amethyst**
  Amethyst adds a NIP-34 Git Repositories feed, a napplet Discover section from NIP-89 and NIP-5A events, NIP-89 client-tag display in PR #3422, and NIP-77 negentropy with streaming reconciliation and automatic created_at windowing.

- **19:02 — Buzz v0.3.38**
  Buzz v0.3.38 hardens relay attack surface on personas, teams, managed agents, and NIP-OA attestations, and adds provider-agnostic model selection including a Databricks AI Gateway v2 backend.

- **19:48 — Notedeck**
  Notedeck lands NIP-37 private-sync relays as kind 10013, a NIP-52 calendar pane redesign, and NIP-22 kind 1111 comments in the headway pane.

- **20:41 — Applesauce**
  Applesauce 6.2.x adds nbunksec portable NIP-46 session import/export and upgrades the wallet package to @cashu/cashu-ts v4 with Amount value objects.

### Releases

- **21:16 — mostro-core v0.14.0**
  mostro-core v0.14.0 ships the next protocol iteration for the Mostro P2P fiat trading network alongside mostro-cli v0.16.0.

- **21:36 — ngit v2.6.1**
  ngit v2.6.1 implements merged NIP-34 GRASP-06 fork semantics replacing personal-fork with a u upstream tag on repo-state events.

- **22:59 — mesh-llm v0.72.0/v0.72.1**
  mesh-llm v0.72.0 and v0.72.1 fix a batching crash on large single prompts and migrate the MCP bridge off deprecated helpers.

- **23:20 — Meiso v1.4.0**
  Meiso v1.4.0 introduces Shared-Key Collaborative Lists on addressable kind 35000 with NIP-44 self-encrypted tasks and relay Last-Write-Wins conflict resolution, replacing prior MLS-based task sharing.

- **24:15 — Cordn 0.3.2**
  Cordn 0.3.2 removes ephemeral sender pubkeys from group message posting and hardens join-request flow against stale re-requests on the coordinator side.

### Project Updates

- **24:53 — diVine**
  diVine merged 108 PRs in a post-launch polish wave, including a NIP-46 connect-flow stability pass migrating nostrconnect:// failures onto structured reason codes.

- **25:11 — Zap Cooking**
  Zap Cooking continues the cross-project NIP-46 fix and composer overhaul from #28.

- **25:27 — Conduit**
  Conduit continues marketplace correctness work on listing flow and buyer, merchant, and store-builder apps from #28's launch.

- **26:02 — Pollerama v1.12–v1.13.1**
  Pollerama v1.12.0 through v1.13.1 add user-selectable client tags, thread depth caps linking to full threads, profile Notes and Conversations tabs, and follow-persistence fixes.

- **26:30 — getwired.app / get-tao.app**
  getwired.app and get-tao.app fixed the NIP-13 confess submission flow so proof-of-work mining UX is coherent during anonymous posting.

- **26:59 — nostui**
  nostui added a mention timeline tab surfacing kind 1 events tagging the active pubkey as a dedicated TUI view.

- **27:17 — Heartwood**
  Heartwood landed a relay-to-serial HSM signing bridge and per-identity NIP-46 bunker URIs so one hardware device exposes distinct bunker connections per identity.

- **27:51 — Nostter**
  nostter reworked auth and signer dispatch into strategy modules with login state on a single signal, unifying NIP-07, NIP-46, and nsec paths.

- **28:07 — Dart NDK**
  Dart NDK moved the NIP-07 signer into ndk_flutter and randomized NIP-59 gift-wrap timestamps against timing correlation.

- **28:29 — Milk Market**
  Milk Market added NIP-23 storefront blog pages, Square payment processing, and automatic shipping-label purchases for paid orders.

- **28:54 — Calendar by Formstr**
  Calendar by Formstr merged PR #159 for an iOS app, PR #197 fixing local calendar-date parsing, and PR #201 adding Playwright E2E on a run-tests label.

- **29:27 — cagliostr**
  cagliostr tightened configurable NIP-13 proof-of-work, NIP-09 deletion by addressable coordinate, and configurable NIP-22 timestamp limits.

- **29:51 — Rapid fire of new projects (Vanderwarker, ntrack, etc.)**
  The Vanderwarker wellbeing suite publishes physical telemetry as kind 30078 Nostr events across five Zapstore apps: Holy Fit, Nunlock, Saint Stream, Sister Charge, and Cellibacy.

- **30:48 — ntrack & Haven**
  ntrack v0.1.9 is an encrypted serverless live location-sharing Android app in Rust and Slint, sibling to Haven from #28 but carrying location updates over encrypted NIP-44 DMs instead of Marmot groups.

- **31:02 — NostrAppShell**
  NostrAppShell published its first user-facing documentation as an early-stage application shell scaffold for building Nostr apps.

- **31:15 — NIPs by Pollerama / new NIP-34 repo clusters**
  NIPs by Pollerama (abh3po/better-nips) surfaces NostrHub kind 30817 community NIPs with trust-weighted NIP-32 approvals. New NIP-34 clusters include Vidstr and a nostrapps.com trio: verdana, hallway, and napps.

### NIP Updates

- **31:53 — Section start**
  Five NIPs merged this week alongside open proposals on NIP-17 wrapper keys, NIP-59 seal handling, NIP-29 group states, filter AND operators, and commerce consolidation into the Gamma Market Spec.

- **32:00 — NIP-44 payload limit — Merged**
  PR #1907 removes the 65,535-byte NIP-44 plaintext cap, raising it to 4 GiB via a longer-length field tagged into the version byte while keeping v2 wire compatibility.

- **32:56 — NIP-86 signevent method — Merged**
  PR #2389 adds a signevent method to NIP-86, and PR #2390 defines a Relay Roles replaceable event declaring administrator and moderator pubkeys.

- **33:43 — NIP-34 u tag for GRASP-06 — Merged**
  PR #2395 replaces the NIP-34 personal-fork tag with a u upstream tag on kind 30618 repo-state events, closing PR #2384 and aligning with ngit v2.6.1.

- **34:14 — NIP-46 client metadata — Merged**
  PR #2381 merges optional name, icon, and homepage metadata on NIP-46 connect requests, catching up to Amber v6.2.2 from #28.

- **34:37 — NIP-17 wrapper keys proposal — Open**
  PR #2397 and PR #2396 propose epoch-based deterministic NIP-17 wrap keys and conversation-key-signed wraps for filterable DM threads without metadata leakage.

- **35:37 — NIP-59 seal rejection proposal — Open**
  PR #2399 proposes relays reject top-level kind 13 seal events from NIP-59 gift wraps, with issue #2398 arguing seals should be ephemeral kinds.

- **35:59 — NIP-29 group states proposal — Open**
  PR #2372 adds explicit open, closed, public, private, and archived group-state semantics to NIP-29 relay-based groups.

- **37:01 — AND operator proposal (NIP-91) — Open**
  PR #2252 proposes an AND operator for Nostr filters, with implementations already in nostr-rs-relay, Applesauce, Amethyst, and worker-relay.

- **37:53 — Closed marketplace NIPs / Gamma Market Spec — Closed**
  Escrow PR #2334, Reservations PR #2335, Marketplace Listing Extension PR #2346, and Accommodation Listing PR #2333 closed as commerce consolidates into the Gamma Market Spec repository composing orders, checkout, escrow, and disputes atop NIP-99.

- **38:14 — Bitcoin identity linkage proposals — Open**
  Two proposals opened for linking Bitcoin identities to Nostr: a NIP-352 Bitcoin Silent Payment Address and a Bitcoin-OTC Identity Linkage Proof.

### NIP Deep Dives

- **38:39 — NIP-86 Relay Management API**
  NIP-86 defines JSON-RPC relay management over HTTP POST with NIP-98 auth. Merged signevent lets admins ask relays to sign events with the relay pubkey, and Relay Roles events declare administrators and moderators so clients validate admin requests without out-of-band trust.

- **42:08 — NIP-89 Recommended Application Handlers**
  NIP-89 defines kind 31990 application handlers and kind 31989 user recommendations so clients discover apps for unknown event kinds via socially filtered Open in... flows. Optional client tags surface authoring app identity with a documented privacy tradeoff. Amethyst's Discover section and napplet host build a full NIP-89 consumer surface on Android.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #28</title>
      <description>Buzz rename and Napplets trust boundary, Conduit marketplace MVP, BitBlik BLIK Lightning exchange, NIP-99 checkout proposal, Six Years of Nostr Junes.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwwpnxcurvdf3xuenqdpddgek5amzw4hhydgl7nvns</link>
      <pubDate>Fri, 10 Jul 2026 12:28:37 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1783686517304-j3jwbuor5</guid>
      <enclosure url="https://blossom.primal.net/a67cbf21ca2c6806f4c95108256cf57ba390242190f79e18acf4720006feb567.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:04:13</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/dbaf6618ca9e1af211247e01f2b6ead9adb4bc9b3a6f7c9e6b8164e975602498.png" />
      
      
      <content:encoded><![CDATA[### News

- **0:00 – Intro**
  This episode follows Nostr Compass #28 across Buzz and Napplets launches, commerce protocols, tagged releases, unreleased work, and a June retrospective.

- **0:16 – Amethyst v1.12.1–v1.12.6 follow-ups**
  Amethyst shipped six rapid patches after v1.12.0: Health Connect Workouts and deterministic Tor Active in v1.12.1, Road Events and collapsable replies in v1.12.2, relay-latency health tracking and macOS notarization in v1.12.3, and Crowdin translation passes through v1.12.6 with NIP-5A and NIP-5D napplet support.

- **2:10 – Sprout rebrands to Buzz**
  Sprout renamed to Buzz with personas, teams, and managed-agent records publishing as Nostr events in PR #1189, per-message read markers in PR #1178, NIP-OA owner attestations in PR #1198, 7-day default ephemeral channels in PR #1182, and per-agent relay overrides in PR #1131.

- **5:06 – Napplets (composable Nostr apps)**
  Napplets by sandwich.farm defines a trust-boundary protocol for composable sandboxed apps resolved over Nostr and Blossom, with spec work in NIP-5D PR #2303 and packages @napplet/core, @napplet/sdk, and @napplet/conformance cutting 51 version tags at launch.

- **46:15 – Conduit marketplace MVP hardening**
  Conduit landed 17 merged PRs hardening the buyer Market, Merchant Portal, and Store Builder apps, including listing safety states in PR #110, commerce capability detection in PR #102, public relay default in PR #128, and privacy-safe analytics in PR #109 and PR #129.

- **19:59 – BitBlik P2P BLIK-to-Lightning exchange**
  BitBlik opens a peer-to-peer BLIK to Lightning exchange over NIP-44 encrypted DMs, with kind 38383 offers, kind 25195/25196 RPC, and kind 25197 status updates settled atomically by a coordinator holding Lightning hold invoices.

- **55:41 – Six Years of Nostr Junes**
  Nostr Compass #28 closes June with a retrospective from 2021 protocol infancy through 2022 NIPs repo formation, 2023 post-Damus adoption, 2024 signers and NIP-17, 2025 Marmot and git-over-Nostr maturity, and 2026's Buzz, Napplets, Conduit, BitBlik, CodeDeck, and Haven launches.

### Releases

- **23:44 – Amber v6.2.2 NIP-46 client metadata**
  Amber v6.2.2 implements NIP-46 client metadata from PR #2381, surfacing native app icons and connect metadata on request screens, gating logcat behind BuildConfig.DEBUG, and storing encrypt/decrypt payloads as ciphertext decrypted on demand.

- **25:38 – Haven private location sharing on Marmot**
  Haven shipped v0.1.0 through v0.1.4 as a censorship-resistant location-sharing app on Marmot, extending MLS encrypted group state from messaging into consented location updates on Android and iOS via Zapstore.

- **26:10 – CodeDeck remote agentic coding**
  CodeDeck v2026.06.17 through v2026.6.20 lets users control Claude Code sessions on a laptop from a phone over encrypted Nostr relays, embeds nostr-vpn FIPS mesh as Android VPN in v2026.06.17, collapses pairing to a single QR scan in v2026.6.18, and adds per-session model selection in v2026.6.20.

- **27:27 – Grain v0.8.0-rc1**
  Grain v0.8.0-rc1 ships client/core, an importable Go outbox-model Nostr client engine with NIP-44, NIP-42, NIP-65, NIP-17, NIP-51, and Blossom support.

- **28:37 – Mostro Core v0.13.1**
  mostro-core v0.13.1 adds a PriceTooStale error variant. Mostro merged invalid order ID surfacing in PR #752, El Toque fiat-cross in PR #778, and protocol_version tag rename in PR #782.

- **29:36 – Wisp v1.1.2 & Dark Wisp**
  Wisp v1.1.2 keeps self-send wallet legs distinct in PR #586, adds lazy inline video players in PR #592, and incremental feed spam scoring. Dark Wisp v1.1.0 adds ZEC, DASH, BCH, and LTC zap targets plus anon mode.

- **30:16 – Citrine v3.0.1**
  Citrine v3.0.1 fixes a crash when unregistering an unregistered Pokey receiver.

- **30:29 – FIPS v0.4.0-rc2**
  FIPS v0.4.0-rc2 validates packaging on top of the v0.4.0 line with Nym mixnet transport, mDNS LAN discovery, data-plane throughput improvements, and hitless FMP/FSP rekey.

- **31:52 – Kubo v2026.06.12 & v2026.06.20**
  Kubo v2026.06.12 makes the TEPP trust-gated kid feed mandatory from first launch with managed parent group chat. v2026.06.20 adds parent-curated YouTube channels with HTTP fast lane and mention autocomplete in group chat.

- **34:16 – Pollerama v1.9.0–v1.9.4**
  Pollerama v1.9.0 adds an on-device relay engine for instant offline-capable feeds. v1.9.2 fixes launch feed loading and DM note fetching. v1.9.4 adds web-of-trust trust scores and a People you may know rail.

- **39:58 – Smaller tagged releases (rapid fire)**
  Smaller releases include nostr-mail-client v0.13.1 restoring NIP-55 login, nostream v3.0.0 script nonces, LaWallet NWC v1.0.0, Formstr Nostr Calendar v2.0.0 through v2.0.2 PWA, and bumps across NYM, ZapBook, noornote, nostr-relay, algia, astraea, boris, nak, nosflare, and nostrord.

### Project Updates

- **41:53 – Cordn Ad-hoc CVM**
  Cordn Ad-hoc by sandwich.farm opens as a browser-based MLS coordinator running ContextVM in a tab with no backend, publishing coordinator pubkeys and storing MLS state in browser storage for ad-hoc Cordn groups.

- **43:53 – SnowCait/nostter 19 PRs**
  nostter merged 19 PRs including app-manager.nostter.app replacing nostrapp.link in PR #2234, IndexedDB caching for followees' replaceable events in PR #2231, and reactive seen-on relay state in PR #2230.

- **44:35 – Zap Cooking fixes & composer overhaul**
  Zap Cooking merged PR #452 patching a Primal remote-signer pubkey stamping bug affecting uploads and zaps, and PR #458 rebuilding the composer with countdown timer and Write/Preview tabs.

- **45:43 – Shopstr Cashu escrow & storefront tools**
  Shopstr merged PR #512 implementing end-to-end P2PK Cashu escrow, read tools in PR #543, and profile image URL paste in PR #229.

- **46:47 – divine.video mobile/desktop work**
  divine.video merged feed deduplication in PR #5465, exact local Nostr tag filters in PR #5463, video editor draft recovery in PR #5474, and followed-but-unreplied Messages badge counts in PR #5473.

- **47:18 – Nostur NIP-46 & DM fixes**
  Nostur merged PR #74 adding NIP-46 client metadata to bunker connects, PR #75 and PR #76 fixing DM refresh after foreground transitions, and PR #78 adding QR scanning for custom NWC setup.

- **48:00 – Social Agents Prototype**
  Social Agents Prototype by Sruly Rosenblat explores decentralized agent-to-agent communication where agents broadcast atomic questions and every message passes through a human approval gate before transit.

- **48:36 – PRana worklist for NIP-34 issues**
  PRana by DocNR is a triage worklist of correctly-open NIP-34 issues across opt-in git-over-Nostr repos, launching the same week as maintainers-tag removal in PR #2384.

- **49:23 – routstr-chat**
  routstr-chat is a local LLM chat interface using the Routstr protocol to route inference through kind 38421 provider announcements on Nostr with Cashu settlement atop the Routstrd daemon.

### NIP Updates

- **50:00 – Protocol work (intro)**
  Protocol work this week included two merges and a wave of open proposals spanning signers, relay management, commerce, git-over-Nostr, groups, and short-form media.

- **23:44 – NIP-46 client metadata (same as Amber above) — Open**
  NIP-46 PR #2381 adds optional name, url, and icon client metadata to bunker connect requests, now shipped in Amber v6.2.2 and Nostur PR #74, closing the bunker-pairing identity gap alongside Clave's proposal.

- **50:42 – NIP-86 signevent — Merged**
  PR #2389 merges a signevent operation into NIP-86 relay management, letting admins manage NIP-43 events on behalf of the relay, paired with open PR #2390 defining relay-roles events.

- **51:20 – NIP-99 on-graph checkout layer — Open**
  PR #2323 proposes an on-graph checkout and escrow layer for NIP-99 marketplaces covering order flow, payment, delivery confirmation, and dispute resolution as public addressable events.

- **52:32 – NIP-34 remove maintainers tag — Open**
  PR #2384 removes the maintainers tag from NIP-34 repository announcements to fix undefined expiry semantics affecting downstream tools including PRana and ngit.

- **53:12 – NIP-29 group states — Open**
  PR #2372 proposes a groups-states framing for NIP-29 relay-based groups, shared as work in progress for feedback.

- **53:23 – NIP-79 Stories / NIP-76 Reels Feed — Open**
  PR #2386 proposes NIP-79 ephemeral 24-hour Stories with kind 19 slides and kind 34237 sequencing. PR #2385 proposes NIP-76 for a short-form video Reels Feed.

- **54:33 – Kind 1111 reply reactivation — Open**
  PR #2358 removes the discouragement of using kind 1111 NIP-22 comment replies on kind 1 notes, explicitly supporting threaded comments on ordinary timeline posts.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #27</title>
      <description>Amethyst v1.12.0 Cashu nutzaps, Mostro Protocol v2, Clave 1.0 App Store push signing, Signet NIP-17 fix, NIP-77 and NIP-61 deep dives.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwwpjxvmnwvfkxv6nwvfdw45hwafnxvuhweqve2pwp</link>
      <pubDate>Thu, 25 Jun 2026 08:46:03 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1782377163571-uiwu339wd</guid>
      <enclosure url="https://blossom.primal.net/564e5817b6149bb966d30a34b51fde86fdd3d6dc47a5254f6b14f6a747aa1e97.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>47:24</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/cd3b6cd7ff34afc1a0c4f9f1c41dfff962eae94e333257cf97f4af0c2a4ddb30.png" />
      
      
      <content:encoded><![CDATA[### News

- **0:00 Intro**
  This episode follows Nostr Compass #27 across signer work, P2P trade protocols, flagship client releases, merged NIPs, and deep dives on NIP-77 and NIP-61.

- **0:19 Amethyst v1.12.0 – Cashu wallets, nutzaps, CLINK driver & Tor self-heal**
  Amethyst v1.12.0 bundles 170+ PRs including NIP-60 Cashu wallets and NIP-61 nutzaps in PR #3075, per-mint balance in PR #3115, unified payment cards in PR #3191, CLINK on-chain zap verification in PR #3039, private NIP-17 replies in PR #3201, and Tor self-heal across PR #3053, PR #3223, PR #3224, and PR #3231.

- **1:54 Mostro Core v0.13.0 – Protocol v2, relay-blind trade comms**
  mostro-core v0.13.0 replaces relay-routed trade messaging with Protocol v2 NIP-44 kind 14 direct transport bound to per-trade keys. Mostro v0.17.5 makes the anti-abuse bond optional and operator-configurable at the node level.

- **3:34 Signet v1.11.0 – NIP-17 admin-command signature bypass patch**
  Signet v1.11.0 fixes a NIP-17 gift-wrap admin-command bypass where kill-switch commands checked only the unsigned inner rumor author, letting attackers forge panic, resumeall, or alive commands from public information. The patch verifies the seal and binds the rumor author to the signature.

- **4:48 Chama v3.2–3.5 – Trade room redraw & money path hardening**
  Chama shipped v3.2.0 through v3.5.0 redrawing the trade room around per-seat color-coded action prompts, tightening consensus rules in v3.3.0, localizing prices in v3.3.1, hardening the money path in v3.4.0, and adding arbiter guardrails in v3.5.0.

- **5:54 Clave 1.0 – App Store launch with push-woken background signing**
  Clave v1.0.0 build 102 was submitted to the App Store with push-woken background signing, incoming BIP-340 Schnorr signature verification, NIP-44 v3 kind-scoped permissions, multi-account pairing, connect-metadata app identity, and NIP-46 logout support.

### Releases

- **7:21 Amber v6.2.1 – NIP-46 logout & battery drain fixes**
  Amber v6.2.1 adds NIP-46 logout, reduces relay reconnect battery drain, drops dead relays from the pool, parses kind 39701 bookmark events, and rebuilds settings with Material 3 grouped cards.

- **8:24 Nostur 1.29.0 – Anonymous replies & remote-signer logout**
  Nostur 1.29.0 adds anonymous replies, zap receipt replies, NIP-46 logout on account sign-out, improved bunker connection flow, DM relay conflict fixes, and notification media thumbnails.

- **9:02 Citrine v3.0.0 – Negentropy, NIP-42 AUTH & onion-relay filtering**
  Citrine v3.0.0 adds NIP-77 Negentropy sync, external signer and NIP-42 AUTH in the aggregator, NIP-51 mute-list honoring, three-relay-per-author fetch caps, and onion URL filtering when Tor is disabled.

- **11:32 FIPS v0.4.0-rc1 – Nym mixnet transport & mDNS LAN discovery**
  FIPS v0.4.0-rc1 adds Nym mixnet outbound transport and opt-in mDNS/DNS-SD LAN discovery while staying wire-compatible with v0.3.0, plus hitless FMP and FSP rekey under packet loss.

- **13:06 Calendar by Formstr v1.6.1-2 – Per-event notifications**
  Calendar by Formstr v1.6.1 adds per-event notification preferences in PR #109. v1.6.2 fixes Amber login in PR #185.

- **14:21 Bitchat v1.5.2-3 – Nostr & BLE transport hardening**
  Bitchat v1.5.2 rate-limits iOS peer notifications in PR #972 and hardens Nostr validation in PR #1012. v1.5.3 hotfixes a launch crash from recursive dispatch_once in PR #1343.

- **15:50 Keep v1.0.5 – Signer policy surface moves to audited Rust core**
  Keep v1.0.5 pins keep v0.4.8 with bunker init race fixes in PR #296 and authorized-clients population in PR #291. Upstream keep v0.4.9 moves NIP-55 and NIP-46 policy into the audited Rust core with NIP-44 v3 cipher support.

- **16:55 ants v0.4.5 – Article portal links & Habla restored**
  ants v0.4.5 adds article portal links, naddr sharing, and raw JSON access for long-form posts, restores Habla in the portal set, fixes footnote rendering, and waits for relay connection before profile restore.

- **17:41 Morganite v0.0.3 – Local Blossom cache for Android with Tor**
  Morganite v0.0.3 implements BUD-08 local Blossom mirroring with 1GB LRU pruning, on-demand Tor, inbox-relay-first blob discovery, and battery fixes for logcat streams and leaked HTTP clients.

- **19:09 Coracle 0.6.34-35 – NIP-46 login, stale feeds & reply toggle fixes**
  Coracle 0.6.34 fixes NIP-46 login, stale home feed refresh, and reply toggle filtering. 0.6.35 fixes reposts hidden when replies are disabled.

- **19:41 Zeus v13.1.0-rc1 – CLINK noffers & queue-less NWC**
  Zeus v13.1.0-rc1 adds queue-less NIP-47 NWC payments on iOS, CLINK noffer support with Zeus Pay generating a noffer per account, and opt-out for Nostr Zap receipts on Zeus Pay.

- **20:44 Alby Extension v3.14.3 – noble/scure crypto stack migration**
  Alby Extension v3.14.3 migrates @noble/curves, @noble/hashes, @noble/ciphers, @noble/secp256k1, @scure/bip32, and @scure/base to v2/v3 majors, touching the NIP-07 signing and NIP-44 encryption path.

- **21:13 Mostro Mobile v1.2.8-9 – Protocol v2 & bond policy surface**
  Mostro Mobile v1.2.8 lands Protocol v2 client support with maker anti-abuse bond in PR #608, bootstrap relay discovery in PR #610, and order cancellation history in PR #602. v1.2.9 surfaces bond policy from node info in PR #617.

- **21:41 ZapBook – Multi-account, Marmot key pub & circle re-invitations**
  ZapBook shipped builds 4 through 27 with multi-account switching in PR #25, automatic Marmot kind 443 key-package publication on onboarding in PR #20, removed-member re-invitation handling in PR #24, background ONNX embedding search in PR #19, and NWC environment suffix support.

- **27:34 Alby Hub v1.23.0 – NIP-47 publish fix & Bitrefill on NWC**
  Alby Hub v1.23.0 stops retrying NIP-47 info publish for deleted apps in PR #2391, switches Bitrefill to standard NWC in PR #2420, and adds readonly scopes for app-store apps in PR #2415.

### Project Updates

- **28:20 Rapid fire: diVine, Pollerama & more**
  diVine merged 119 PRs toward its next release including REST-first video publish in PR #5221, blocklist refilter in PR #5208, and DM list recovery in PR #5202. Pollerama merged 15 PRs including signer rework in PR #198 and profile editor in PR #205, queued for the next tag after v1.6.4.

### NIP Updates

- **31:18 NIP update: merged NIPs (NIP-46 logout, NIP-CC → NIP-GC) – Merged**
  PR #2373 adds a logout method to NIP-46, shipped the same week in Amber, Clave, and Nostur. PR #2365 updates NIP-CC to reference modern NIP-GC group chat machinery.

- **31:56 NIP-29 open PRs – banner tags, invite codes, message pinning, group reporting, RBAC – Open**
  Open NIP-29 proposals include banner tags in PR #2383, invite-code suffixes in PR #2380, message pinning in PR #2379, group reporting via NIP-17 DMs in PR #2377, and RBAC roles in PR #2376.

- **32:59 NIP-46 open PRs – client metadata & silent timeout fix – Open**
  PR #2381 adds optional name, url, and icon connect metadata for signer pairing screens, implemented in Clave build 101. PR #2375 requires signers to hold requests open until user input rather than silently timing out.

- **34:11 NIP-100 proposal – Sovereign Agent Identity Network – Open**
  PR #2378 proposes NIP-100 SNIN for agent-to-agent identity and capability discovery, a broad draft likely to split in review.

- **34:51 BUD-00 merged – broadens Blossom definitions – Merged**
  Blossom BUD-00 PR #108 merged June 15, broadening BUD definitions to cover client-side conventions like BUD-10 URI schemes and BUD-08 local-cache patterns Morganite implements this week.

### NIP Deep Dives

- **35:11 NIP Deep Dive: NIP-77 – Negentropy**
  NIP-77 defines set reconciliation over `NEG-OPEN` and `NEG-MSG` frames using sequenced Merkle-tree fingerprints keyed by `(created_at, id)`, reducing sync cost to roughly `O(d log n)` versus naive ID dumps. Citrine v3.0.0 is the first Android local-relay surface to reconcile against external relays in place of bulk `REQ` pulls.

- **41:11 NIP Deep Dive: NIP-61 – Nutzaps**
  NIP-61 delivers peer-to-peer Cashu ecash as Nostr events: kind 10019 mint recommendations, kind 9321 P2PK-locked payment proofs, and kind 7375 redeemed-proof wallet records. Unlike NIP-57 Lightning zaps, nutzaps carry inline cryptographic proof and need no real-time HTLC routing. Amethyst v1.12.0 is the first dominant Android client rendering received nutzaps in the timeline.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #26</title>
      <description>Marmot v2 darkmatter draft, Chama v3.1 standalone escrow, Coracle Caravel hosting, NIP-67 EOSE finish merges, NIP-50 autocomplete and Clave NIP-44 v3.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwwpjxgunwdps8qunjdpd09u85arsxpcxjagg64f3n</link>
      <pubDate>Wed, 24 Jun 2026 10:36:48 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1782297408994-yxztp0piu</guid>
      <enclosure url="https://blossom.primal.net/87045768ff82a89d16e26dc0ef40c75a3975404bd2cd3ad9ebfeb53e92ddf40f.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>33:36</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/5e697f87eb1e76bd7c8d516fc7bb537f53461960daef51667712e4bef6fd1f4a.png" />
      
      
      <content:encoded><![CDATA[### News

- **0:00 Marmot v2: protocol redraft, native clients, archived Flutter app**
  The marmot-protocol organization opened darkmatter for a v2 protocol draft and OpenMLS-backed CGKA engine, plus darkmatter-ios and darkmatter-android native clients. The original Flutter Whitenoise is archived as whitenoise-archive while MDK remains the deployed implementation until the draft converges. MIP-01 monolithic group data splits into versioned app components, and cgka-engine separates transport and persistence from the MLS state machine with Tamarin convergence proofs.

- **5:17 Chama v2–v3.1: standalone P2P escrow updates**
  Chama shipped seventeen releases from v2.0.0 through v3.1.0 with holder-only Shamir share encryption, arbiter substitution, global community routing, dispute-deadline arbitration, and v3.0.0 end-to-end trade notifications. v3.1.0 redraws the trade room around a Reserved → Locked → Settled spine and adds per-seller storefronts for curated swaps, loanbooks, and bills without BTCPay or Zaprite.

- **7:52 Coracle Hosting: paid relay service + open-source Caravel stack**
  Hodlbod announced Coracle Hosting on June 3, a paid community-relay service powered by open-source Caravel billing and zooid multi-relay runtime, with recurring Lightning via NWC or card, optional LiveKit and Blossom integration, and planned Flotilla deep integration for managed infrastructure.

### Releases

- **9:16 Angor v0.2.29–v0.2.30: mainnet default + funding test**
  Angor v0.2.30 flips the default network to mainnet in PR #893, with mobile create-project flow in PR #889. v0.2.29 adds a 3-user UAT funding test over 10 rounds in PR #881 and an Angor CLI and MCP server plan in PR #792.

- **10:13 Sprout v0.3.15: ephemeral channel TTL refresh + ACP slash commands**
  Sprout v0.3.15 extends ephemeral channel TTL on unarchive in PR #902, adds mobile custom emojis in PR #906, fixes multi-word display name and NIP-27 mention extraction in PR #905, and forwards slash commands to ACP connectors in PR #919.

- **11:03 Wisp v1.1.1: Spark wallet integration + nsec paste guard**
  Wisp v1.1.1 adds Spark wallet Connect UI in PR #548, a system-wide nsec1 paste guard, QR-scan login with watch-only mode in PR #552, zap messages as mini-posts in PR #559, and web-of-trust thread reply filtering in PR #583.

- **12:21 Nostria v3.1.46: notification rework**
  Nostria v3.1.46 reworks the notification counter to count only new notifications since the last view, fixing badge inflation when scrolling loads older items. v3.1.45 fixed a split-payment bug for Lightning and QR payments.

- **12:52 nospeak 1.1.3: ICE restart failover**
  nospeak v1.1.3 adds ICE restart on FAILED state for 1-on-1 voice calls, letting WebRTC renegotiate candidates after transient NAT or network changes, and keeps the Android screen on during video calls.

### Project Updates

- **13:22 Amethyst: NIP-32 / NIP-F4 / Tor track (41 PRs)**
  Amethyst merged 41 PRs without a release tag, continuing NIP-32 hashtag labeling, NIP-F4 podcast screen, music playlists, Tor self-heal, ephemeral anonymous upload signers, and onchain zaps from last week's unreleased queue.

- **13:55 Damus: relay tracking from OK messages**
  Damus merged PR #3786 adding successful OK messages to the post-relay list so relays that acknowledge without delivering events remain visible, plus Profile View fixes in PR #3796 and the v1.17 changelog in PR #3725.

- **14:21 Shopstr: NIP-34 dual-publishing**
  Shopstr announced its shopstr repo on ngit as a NIP-34 git collaboration path alongside the primary GitHub development surface, following Mostro as the second major marketplace to dual-publish.

- **14:48 Hermes-Marmot: AI agent gateway over MLS**
  hermes-marmot connects the Hermes Agent to Marmot groups via mdk-python, letting users DM an AI agent from any kind 445 MLS client including White Noise, with npub allowlist access control and NIP-59 gift-wrap unwrapping for inbound messages.

### NIP Updates

- **15:47 NIP-67 EOSE completeness hint (PR #2317) — Merged**
  PR #2317 adds NIP-67 extending EOSE with an optional `"finish"` third element so relays can signal all stored matches were delivered versus hitting an internal cap.

- **16:43 NIP-50 autocomplete extension (PR #2357) — Merged**
  PR #2357 adds `autocomplete:true/false` tokens to NIP-50 search queries so relays can switch between prefix matching for typeahead UIs and full-text scoring.

- **17:32 NIP-GART: emergency alerts + encrypted location broadcasts (PR #2374) — Open**
  PR #2374 proposes a privacy-preserving wire format for emergency alerts and location broadcasts to trusted recipient groups, hiding sender identity, membership, and payload from relay operators while keeping events replay-safe and signature-verifiable.

- **18:50 NIP-46 logout method (PR #2373) — Open**
  PR #2373 by hzrd149 adds a `logout` method to NIP-46 so clients can explicitly end bunker sessions instead of waiting for timeout.

- **19:46 NIP-95: hybrid relay P2P proposal — Open**
  A long-form NIP-95 hybrid relay-P2P specification circulated as a kind 30023 post defining WebRTC direct client connections for live messaging while relays handle stored-event retrieval and offline delivery, not yet filed as a nostr-protocol/nips pull request.

- **20:22 NIP-44 v3: Clave ports the spec (second signer) — Open**
  Clave landed an independent NIP-44 v3 port with HKDF, ECDH, padding, and v3-context-aware approval prompts with sensitivity tiers, joining Amber v6.2.0 as a second production signer before the NIPs PR merges.

### NIP Deep Dives

- **21:14 NIP deep dive: NIP-67 (EOSE Completeness Hint)**
  NIP-67 fixes silent data loss when clients use `received < limit` heuristics against cap-enforcing relays and eliminates mandatory wasted pagination round trips when a filter matches exactly the relay cap. `["EOSE", "<sub_id>", "finish"]` means complete delivery; a bare EOSE from a NIP-67-advertising relay means more events remain.

- **23:28 NIP deep dive: NIP-50 (Search + autocomplete extension)**
  NIP-50 defines the `search` filter field with relay-specific semantics. PR #2357 elevates `autocomplete:true` from relay-private dialect to spec-blessed token for prefix matching on titles and profile typeahead, with graceful fallback when relays treat the token as literal search text.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #25</title>
      <description>Amber 6.2.0 NIP-44 v3, Mostro Cashu CDK escrow, NIP-F4 podcasts merged, Amethyst NIP-32 labels, contested NIP-17 key decoupling opens bunker debate.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwwp3xccrsve48ymrzwpd0f6rg6mnvd5r2vq45c35z</link>
      <pubDate>Tue, 16 Jun 2026 11:12:39 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1781608359618-zt4ksch50</guid>
      <enclosure url="https://blossom.primal.net/3c024a40fd4bce1495c37fe50233fd5644cefd5514b39532f965e6164224abf0.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>34:14</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/f0dc42e5bdd89f25c797c3985efd4e52dd3677d3ff1c472794f7c7e77f54e910.png" />
      
      
      <content:encoded><![CDATA[### News

- **0:00 Intro**
  This episode follows Nostr Compass #25 across top stories, releases, in-development work, a batch of merged NIPs, and deep dives on NIP-32 and NIP-F4.

- **0:15 Amber 6.2.0 – NIP-44 v3 encryption shipped**
  Amber v6.2.0 adds NIP-44 v3 encryption with a dedicated approval screen, intent and bunker previews, history logging, auto-reject for invalid requests, and ContentProvider authority registration for downstream Android apps. NIP-46 sessions auto-accept ping on connect, and the deprecated sign_message method was removed. Amber ships v3 before the NIPs PR lands, making it the de facto reference for other clients.

- **1:15 Mostro – Cashu escrow integration via CDK**
  grunch landed eight PRs integrating Cashu P2PK multisig (NUT-10 and NUT-11) as a second settlement backend alongside Lightning on the Mostro P2P exchange. mostro-core v0.12.0 adds 2-of-3 multisig escrow types, documented in PR #756 with per-order trade keys in PR #757, an EscrowBackend trait in PR #760, CDK wrapping in PR #759, CAS escrow locks in PR #761, and a containerized mint CI job in PR #762.

### Releases

- **2:47 ngit v2.5.0 – GRASP fallback and lazy git fetches**
  ngit v2.5.0 defaults git push pr/ and ngit send to produce PR kinds when a GRASP server is registered, falls back to GRASP-06 routing on push failure, preserves unknown tags on ngit init republish, and adds lazy fetch helpers shared across ngit pr apply, checkout, and list.

- **3:57 Jumble v26.5.7 – EXIF stripping and validated zap counts**
  Jumble v26.5.7 strips EXIF location and camera metadata from image uploads, computes zap counts only from cryptographically validated receipts, and adds sender-identity verification for NIP-17 DMs.

- **5:01 nostr-calendar v1.6.0 – RSVP and duplicate participant handling**
  nostr-calendar v1.6.0 lands RSVP flow in PR #169, duplicate participant prevention in PR #168, and non-blocking publish defaults in PR #170.

- **6:23 Sprout 0.3.6 – mesh-llm and channel sections**
  Sprout v0.3.6 adds in-process mesh-llm integration in PR #798, user-defined channel sections with relay sync in PR #792 and PR #800, thread-aware notifications in PR #761, arbitrary file attachments in PR #810, and a Pulse social feed tab in PR #772.

- **7:35 NostrBotKit v0.5.0 – Marmot group chat in a Rust bot framework**
  NostrBotKit v0.5.0 adds Marmot support with automatic group invitation handling, dm_marmot and dm_marmot_npub commands, MIP-04 attachment decryption, and MLS state encrypted with a key derived from the bot private key, making it the first Rust framework with NIP-104 bot support.

- **8:42 noscrypt v0.1.14 – signed cryptography library release**
  noscrypt v0.1.14 is a security release of the C cryptography library used for secp256k1, NIP-04, and NIP-44 primitives, shipped with PGP-signed downloads verifiable against the maintainer public key.

- **9:10 Chama v1.3.0 – Nostr-native P2P escrow with Fedimint**
  Chama v1.3.0 introduces trade healing that survives session restarts and pay-rail matching for US-leaning Chamas, building on Fedimint ecash and 2-of-3 Shamir secret sharing in a serverless Nostr-native escrow client.

### Project Updates

- **10:12 Amethyst – NIP-32 hashtag labeling, podcast screen, music tracks**
  Amethyst merged 52 PRs without a release tag, including NIP-32 hashtag labeling and a label-based feed in PR #3111, a dedicated podcast screen in PR #3105, software apps feed in PR #3071, music tracks via NIP-51 in PR #3067, ephemeral anonymous upload signers in PR #3123, and Tor self-heal in PR #3053.

- **12:08 Shopstr – OpenGraph preview URL validation**
  Shopstr PR #504 validates OpenGraph preview URLs before rendering in marketplace listings, closing an XSS surface where malicious sellers could inject scripted content via crafted OG metadata.

### NIP Updates

- **12:47 NIP-F4 (Podcasts) merged after two years – Merged**
  PR #1093 merged May 28 after 27 months, defining kind 54 podcast episodes with imeta audio metadata, kind 10154 podcast metadata, kind 10164 author counter-claims, and kind 10054 favorite-podcast lists, with RSS kept as the distribution layer and Nostr as the social layer.

- **14:09 NIP-17 key decoupling (PR #2361) – Open**
  PR #2361 proposes separating identity and encryption keys in NIP-17 via kind 10044 encryption key advertisements and an n tag on seals. Cody Tseng supports it for bunker UX; Vitor Pamplona argues it breaks interop and that Marmot key packages already solve the problem.

- **17:18 NIP-Silent Payments payment flow (PR #2362) – Open**
  PR #2362 defines kind 8352 silent payment receipt notifications via NIP-59 gift wrap and kind 10353 encrypted UTXO cache for cross-device Silent Payments wallet sync, companion to PR #2355.

- **19:03 NIP-PIP Perfect IP Packets (PR #2364) – Open**
  PR #2364 proposes addressable kinds 39078 (manifest), 39079 (slices), and 39080 (repair requests) for a packet-tree transport breaking large files into reconcilable slices.

- **20:01 NIP-29 audio/video live spaces (PR #2238) – Merged**
  PR #2238 extends NIP-29 relay-based groups with audio and video live-space support, anchoring NIP-53 live activity in group context.

- **20:26 NIP-71 video multiple audio tracks (PR #2255) – Merged**
  PR #2255 adds audio-track NIP-92 imeta tags to NIP-71 video events for multi-language tracks, audio-only streaming, and resolution switching with stable audio.

- **21:13 NIP-59 ephemeral gift wrap (PR #2245) – Merged**
  PR #2245 adds kind 21059 as an ephemeral NIP-59 gift wrap counterpart to kind 1059, letting relays drop typing indicators and presence pings after broadcast.

- **21:56 NIP-78 application-specific kind (PR #2292) – Merged**
  PR #2292 reclassifies NIP-78 application-specific data as a normal addressable kind, aligning replaceability with other application-state NIPs.

- **22:20 NIP-85 clarifications (PR #2304) – Merged**
  PR #2304 clarifies multiple keys and relays per service provider in NIP-85 Trusted Assertions, covering operator key rotation paths.

- **22:40 NIP-01 relay connection management one-liner (PR #2307) – Merged**
  PR #2307 adds a single sentence to NIP-01 on relay connection lifetimes, addressing silent message loss when clients differ on idle WebSocket handling.

- **23:08 NIP-C7 kind 9 chat constraint (PR #2310) – Merged**
  PR #2310 restricts NIP-C7 chat views to kind 9 messages only, separating ephemeral chat from kind 1 timeline posts.

- **23:26 NIP-55 simplification (PR #2363) – Open**
  PR #2363 simplifies the NIP-55 Android signer application spec, paving the way for Amber v6.2.0 ContentProvider authority registration.

- **23:42 NIP-44 v3 – Amber implementation ahead of spec – Open**
  Amber v6.2.0 ships NIP-44 v3 with version byte 0x03, dedicated approval UI, auto-reject, and per-direction history logging before the NIPs-repo spec PR merges, making v3 an Amber-specific extension until protocol consensus catches up.

### NIP Deep Dives

- **24:31 NIP deep dive: NIP-32 (Labeling)**
  NIP-32 defines kind 1985 label events with L namespace and l label tags targeting events, pubkeys, relays, URLs, or topics. Labels are assertions, not protocol truth: clients choose which labelers and namespaces to honor. Amethyst PR #3111 deploys hashtag discovery via trusted labelers, replacing brittle #tag text matching while keeping text fallback for unlabeled notes.

- **28:16 NIP deep dive: NIP-F4 (Podcasts)**
  NIP-F4 treats each podcast as its own Nostr keypair with kind 10154 metadata, kind 10164 author counter-claims, kind 54 episodes, and kind 10054 favorite lists. The merge settled on RSS as distribution layer and Nostr as social layer after 27 months of debate. Open items include a kind 10164 example typo, episode discovery without RSS GUID bridging, and stub fields on kind 54 audio tags.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #24</title>
      <description>Amethyst v1.11.0 calendars, Vector v0.4.0 Tor MCP rewrite, MDK NIP-40, Formstr calendar NIPs, Cordn MLS, Six Years of Nostr Mays recalled.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwwp3x5erjwfexvunyvpd0gm85dmcx9jnqdcpup08w</link>
      <pubDate>Mon, 15 Jun 2026 13:26:33 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1781529993920-z6z7x1e07</guid>
      <enclosure url="https://blossom.primal.net/d948355a4fdf8ab73713c3e7bc257c7fd98401bebab3ebeb58224d9eabc04cc2.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>36:26</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/a2c89899059c24beb8de841d59f278c9d5886a19d5c084aac3250242dbfd256f.png" />
      
      
      <content:encoded><![CDATA[### News

- **0:25 Amethyst v1.11.0: calendars, on-chain zap splits, and Marmot replies**
  Amethyst v1.11.0 adds NIP-52 calendar UI and reminders in PR #2994, on-chain Bitcoin zap splits in PR #3018, paginated on-chain zap history in PR #2974, Marmot group reply support in PR #2995, hardened NIP-57 receipt validation in PR #2984, and NIP-92 floating-point imeta dimensions in PR #2968, plus Payment Targets support.

- **2:33 White Noise v2026.5.22: iOS push, block UX, and add members**
  White Noise v2026.5.22 ships iOS push through a Notification Service Extension that decrypts MLS ciphertext in PR #673, block and unblock UX in PR #676, an Add members button in PR #679, iOS notification settings in PR #688, and share-via-long-press in PR #687.

- **3:58 MDK adds NIP-40 disappearing messages across platforms**
  MDK merged PR #306 exposing NIP-40 expiration validation through UniFFI for shared iOS and Android behavior, with welcome failure reason hardening in PR #307.

- **4:53 Mostro v0.17.4: Phase 3 closes the slashed-bond loop**
  Mostro v0.17.4 lands slashed-bond payouts to dispute winners in PR #738, Phase 3.5 payout confirmation in PR #743, legacy dispute finalization in PR #746, Yadio null-rate tolerance in PR #748, and multi-source price provider groundwork in PR #745, with mobile claim path in PR #596.

- **5:39 Applesauce v6.1.0: lookup relays and NIP-34 git casts**
  Applesauce v6.1.0 adds NIP-51 kind 10086 lookup relay lists with User.lookupRelays$, NIP-34 git-cast factories for repo announcements, patches, and issues, and offline relay fixes in PR #73.

- **7:45 Notedeck merges NIP-77 negentropy for giftwraps and thread backfill**
  Notedeck merged PR #1459 wiring NIP-77 negentropy into the shared outbox path for giftwrap reconciliation and uncapped thread backfill, with separate live and negentropy filters and Dave PNS migrated to the shared implementation.

- **8:41 Vector v0.4.0: vector-core rewrite, Tor, NIP-46, full-negentropy MLS, and an MCP agent surface**
  Vector v0.4.0 rewrites all logic into shared vector-core with 440+ tests, one-click Tor with bridges, multi-account support, NIP-46 bunker login, delete-for-everyone in NIP-17 DMs and Marmot groups, full-negentropy MLS sync, Blossom multi-server failover, custom emoji packs, and vector-agent, a 21-tool MCP server for AI-driven messaging.

- **10:29 Cordn surfaces as a coordinator-mediated MLS messenger**
  Cordn (repos at Cordn-msg/cordn and Cordn-msg/cordn-web) is a new MLS messenger using a per-group ContextVM coordinator to order commits and distribute welcomes, trading Marmot's relay-agnostic model for tighter epoch ordering and simpler concurrent-commit resolution while keeping member pubkeys opaque to the coordinator.

- **11:36 deepmarks: NIP-B0 bookmarks with curator-monetized publishing**
  deepmarks-public is a reference client for proposed NIP-B0 kind 39701 bookmarks with curator, indexer, and viewer services, funded by direct-to-curator NIP-57 zaps and a 21,000-sat lifetime tier that converts paying readers into recurring zap recipients.

- **25:38 Six Years of Nostr Mays**
  Nostr Compass #24 closes May with a retrospective from 2021's single NIP-02 contact-list commit through 2022's NIPs repo formation, 2023's 64-NIP explosion and OpenSats funding, 2024's consolidation cycle, 2025's NIP-77 merge and Notedeck Beta, and 2026's MLS-on-Nostr production wave across MDK, White Noise, Scramble, Cordn, and Formstr calendar NIPs.

### Releases

- **12:15 Amber v6.1.0 GA: encrypted per-account backup**
  Amber v6.1.0 GA ships encrypted backup and restore for the permission database in PR #444 and per-account backup splits in PR #446, including last week's PSBT signing work.

- **12:41 Citrine: per-relay subscriptions and onion-URL leak prevention**
  Citrine merged per-relay tagged subscriptions in PR #157 and onion URL filtering when Tor is disabled in PR #162.

- **13:44 Angor v0.2.27 and v0.2.28: relay reliability and Boltz reconnect**
  Angor v0.2.27 and v0.2.28 fix a relay-dedup regression limiting connections to one relay in PR #874 and add WebSocket reconnect for Boltz submarine-swap monitoring in PR #876.

- **14:12 Nostrord v1.1.0: NIP-57 zaps and NIP-29 role distinction**
  Nostrord v1.1.0 adds NIP-57 Lightning zaps in PR #98 and separates NIP-29 role changes from member adds in PR #92.

- **14:27 ぬるぬる v1.5.x: SQLCipher MLS keystore and epoch catch-up**
  ぬるぬる (Nurunuru) shipped five releases with SQLCipher MLS keystore encryption in PR #184, platform extensions in PR #187 and PR #188, and MLS peer-epoch catch-up with replay cache in PR #189 and PR #191.

### Project Updates

- **14:49 Jumble opens Pomegranate-based Google login via threshold signing**
  Jumble opened PR #797 for Google login via the Pomegranate threshold signer, splitting a Nostr key across multiple parties so no single signer holds the full secret.

- **16:03 Shopstr opens MCP server infrastructure**
  Shopstr opened MCP server initialization in PR #492, supporting infrastructure in PR #494, and MCP relay allowlisting in PR #472, making it the first Nostr marketplace with a structured agent tool surface.

- **16:55 Keydex migrates custom kinds and hardens share encryption**
  Keydex opened kind migration from 1337-1345 to 713-721 in PR #226, AEAD over Shamir shares in PR #239, and GF256 arithmetic migration in PR #234.

- **17:20 Mill ships as a drop-in Nostr signer UI component**
  Mill (nostr-mill) from OceanSlim ships as a single-script-tag Web Component covering NIP-07, NIP-46, NIP-55, encrypted nsec, read-only npub, and in-browser keygen behind one unified UI at npm v1.5.0.

- **17:47 moStard v1.0.1 adds Zapstore apps, polls, and NIP-A3 tipping**
  moStard v1.0.1 adds Zapstore kind 32267 app embed cards, kind 20/21 polls, NIP-A3 Payment Targets tipping with per-method QR codes, markdown rendering, GIF picker support, and Amber signer pairing fixes on the Applesauce stack.

### NIP Updates

- **18:29 Calendar NIP stack: four proposals from the Formstr team — Open**
  Ix2 opened PR #2350 for kind 84 participant self-removal, PR #2351 for NIP-52E private calendar events and NIP-52R recurrence with view-key encryption, and PR #2352 for decentralized appointment scheduling, all with a live reference at calendar.formstr.app.

- **23:40 Payment Targets and Silent Payments — Open**
  A Payment Targets proposal (NIP-A3 / payto) defines replaceable kind 10133 events with payto tags mapping to RFC 8905 URIs across bitcoin, lightning, ethereum, monero, and other rails, with Amethyst implementing via PR #2953, PR #3009, and PR #3011. Two competing BIP-352 Silent Payments proposals circulated, with erskingardner flagging that deriving scan keys from nsec lets any scanning service recover the full private key.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #23</title>
      <description>Primal 3.5 Android rebuild, Amethyst v1.10.0 onchain zaps, Hostr P2P rentals, White Noise markdown, AgentNoise Marmot control, NIP-07 and NIP-39 dives.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwwpsxy6rqdekx5mnydfdw35nqemn0pukgaqh44zr7</link>
      <pubDate>Sat, 30 May 2026 11:32:45 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1780140765725-ti0gsxydt</guid>
      <enclosure url="https://blossom.primal.net/e15e96dd99ff78e8fe62e6a98de512b09a1434940ddd9836ceb5e4ee3dc4a4e6.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>39:40</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/ca67d76f80767dbb5b86300f46f3746679901299dbf496a9fd4902b2405d4fb3.png" />
      
      
      <content:encoded><![CDATA[### News

- **00:00 Intro**
  This episode follows Nostr Compass #23 across top stories, shipping releases, in-development work, protocol proposals, and deep dives on NIP-07 and NIP-39.

- **00:15 Primal 3.5 for Android**
  Primal shipped 3.5.9 with a rebuilt application shell, a dedicated Explore screen, inline audio playback for link previews, inline NIP-05 verification badges, notification filtering overhaul, and editor and database stability fixes.

- **01:21 White Noise: markdown, deep links, and audio metadata**
  White Noise added markdown rendering in PR #665, leave-group flow fixes in PR #675, and whitenoise:// deep links in PR #661. Backend work in whitenoise-rs PR #835 and PR #833 covers kind 30443 key package rotation and audio metadata, with MDK PR #300 and Marmot spec PR #68 security fixes.

- **03:43 Amethyst v1.10.0: Onchain Bitcoin Zaps**
  Amethyst v1.10.0 adds NIP-BC onchain Bitcoin zaps for send, receive, and display, with onchain zapper UI in PR #2977 and transaction history work in PR #2974. Earlier releases fixed Blossom blob detection and desktop ProGuard rules.

- **05:37 AgentNoise: control coding agents over White Noise**
  AgentNoise v0.1.24 is a Rust desktop helper that uses White Noise chats as a control surface for local Codex and Claude coding sessions, driving wn and wnd from whitenoise-rs with PIN-gated sender authentication.

- **07:29 Keycast security audit complete**
  Keycast completed a May 2026 security audit documented in AUDIT.md, tightening NIP-98 auth validation, ALLOWED_PUBKEYS enforcement, default-deny empty policies, SQLite foreign keys, and nested route protection.

- **09:02 Scramble: Marmot client for desktop and Android**
  Scramble (formerly OpenChat) shipped 13 releases with multi-device Marmot support via unique kind 30443 KeyPackage slots, admin-gated auto-add, forward-secrecy disclosure for newly linked devices, and external signer reconnect fixes for NIP-46 and Amber users.

- **10:39 Hostr: P2P rental accommodation on Nostr**
  Hostr is a peer-to-peer rental platform on Nostr covering listings, reservation negotiation, and EVM escrow settlement through four in-development NIPs extending NIP-99 listings, kind 32122 reservations, kind 30303 escrow advertisements, and marketplace profile tags, with app store submission prep and MCP client identity support this week.

### Releases

- **13:10 ngit v2.4.4**
  ngit v2.4.4 adds `ngit sync --trust-server` for cases where a git server is fast-forward ahead of Nostr state, with optional `nostr.trust-server-domains` allowlist configuration.

- **13:52 Amber v6.1.0-pre3 adds PSBT signing**
  Amber v6.1.0-pre3 adds PSBT signing through Intent and NIP-46 paths in PR #438, plus connect-flow layout fixes and permissions select/deselect-all support.

- **14:36 Wisp v1.1.0 ships private replies and drops Amber support**
  Wisp v1.1.0 adds private replies via NIP-17 in PR #540, gift-wrapped reactions and DIP-03 zaps in PR #543, and auto-translate in PR #523, while removing NIP-55 signer support in PR #531.

- **15:26 Calendar by Formstr v1.5.4 fixes gift wrap for new participants**
  Calendar by Formstr v1.5.4 fixes missing gift wrap delivery when adding participants in PR #160, with decryption error handling in PR #156 and timezone drift fixes in PR #138.

- **16:17 Applesauce v6.1.0 adds NIP-34 git casts and NIP-51 lookup relays**
  Applesauce v6.1.0 adds NIP-34 git repository casts, NIP-51 kind 10086 lookup relay lists, replaceable address helpers, and offline relay fixes in PR #73.

- **17:11 Sprout v0.0.16 ships Sprig binary and huddle protocol v2**
  Sprout v0.0.16 ships the Sprig all-in-one binary in PR #605, huddle voice protocol v2 for up to 10 peers in PR #609, and a `--no-memory` harness flag in PR #611.

- **17:48 Nostrord v1.0.3 adds OS keychain and multi-account**
  Nostrord v1.0.3 hardens local key storage with OS keychain and passphrase fallback, adds multi-account support, and ships a tappable bunker QR code for Android signer apps.

- **18:15 Angor migrates to NIP-44 and ships security hardening**
  Angor shipped v0.2.24 through v0.2.26 with NIP-44 migration in PR #860, Blossom uploads without wallet selection in PR #861, and security hardening across PR #854, PR #856, and PR #851.

- **19:07 Alby js-sdk v8.0 ships NWC multi-relay reconnect**
  Alby js-sdk v8.0.1 through v8.0.3 adds native NWC multi-relay reconnect in PR #516, injectable logging in PR #542, and drops the WebSocket polyfill for Node.js 22+.

- **19:55 KeyChat v1.41.1 fixes forward secrecy**
  KeyChat v1.41.1+6513 deletes Signal one-time prekeys immediately after successful decryption, adds URL preview for single-link messages, centralizes media auto-download under a 20 MB threshold, and refreshes NIP-11 relay info on cold start.

### Project Updates

- **24:39 Citrine implements NIP-70 enforcement and signer-based AUTH**
  Citrine merged NIP-70 repost blocking in PR #151, connection address display in PR #149, and NIP-42 AUTH via external signer in PR #141.

- **25:20 Mostro reaches Phase 2 of its anti-abuse bond rollout**
  Mostro Phase 2 lands solver-directed bond slash logic in PR #737, building on Phase 1.5 PayBondInvoice and WaitingTakerBond work in PR #736 and mobile UX in PR #592.

- **25:43 Damus restores relay signal indicator and reconnect behavior**
  Damus merged relay signal indicator restoration in PR #3773 and reconnect fixes after initial connection failure in PR #3775.

- **25:55 rust-nostr adds event finalization traits and NIP-46 race fix**
  rust-nostr added event finalization traits in PR #1358 and fixed a NIP-46 subscribe-before-connect race in PR #1363.

- **26:30 dart-nostr adds Namecoin .bit relay resolver and TLSA pin records**
  dart-nostr merged PR #44 adding .bit relay resolution and TLSA pin records for wss://example.bit/ WebSocket URLs.

- **26:44 Dart NDK adds NIP-77, web signer support, and NIP-17 DM relay lookup**
  Dart NDK merged NIP-77 in PR #464, web signer support in PR #602 and PR #601, kind 10050 DM relay lookup in PR #608, and NIP-46 field preservation in PR #600.

- **27:19 Pages by Form tightens encrypted attachment and document flows\***
  Pages by Form\* merged PR #37 inlining encrypted Blossom attachments in DOCX, HTML, and PDF exports, plus local search in PR #39 and shared backup fixes in PR #40.

- **29:27 Zap Cooking begins a feed overhaul with NIP-92 imeta parsing**
  Zap Cooking merged PR #396 introducing NIP-92 imeta parsing and a canonical blurhash decoder as the first phase of a feed overhaul.

- **29:47 Nurunuru v1.5.0 syncs Native and Web**
  Nurunuru merged PR #176 syncing Native and Web builds with birthday notifications, mutual-follow zap detection, custom emoji reaction UX, and recommendation engine filtering improvements.

### NIP Updates

- **30:57 PR #2251 tightens the NIP-70 protected events spec — Open**
  PR #2251 clarifies that relays must reject reposts embedding full content from NIP-70 protected events, closing ambiguity in the original spec.

- **31:36 PR #1653 proposes a Drafts NIP for private synced drafts — Open**
  PR #1653 proposes replaceable draft events with draft status and NIP-44 self-encryption so works in progress sync across devices without public visibility.

- **32:04 Snapshots (PR #2279) proposes immutable snapshots for replaceable events — Open**
  PR #2279 proposes immutable snapshot events preserving exact replaceable event versions with an `a` tag link back to the addressable coordinate.

- **33:08 Namecoin NIP-05 wave — Open**
  A coordinated .bit NIP-05 push landed open-source PRs against Aegis (#14), nostter (#2128), and dart-nostr (#44), alongside upstream NIP draft PR #2349. The Aegis PR places verification on the producer side, checking the Namecoin chain before signing kind 0 events that claim a .bit identity.

### NIP Deep Dives

- **33:38 NIP Deep Dive: NIP-07 (window.nostr for Web Browsers)**
  NIP-07 defines `window.nostr.getPublicKey()` and `window.nostr.signEvent()` so browser extensions sign events without exposing nsecs to pages, with optional NIP-04 and NIP-44 encrypt/decrypt methods. Keycast uses NIP-07 for NIP-98 HTTP auth, and extensions like Alby, nos2x, Flamingo, and horse implement the interface.

- **36:10 NIP Deep Dive: NIP-39 (external identities in profiles)**
  NIP-39 defines kind 10011 events with `i` tags asserting external platform identities using verifiable proofs such as GitHub Gists, tweets, or Mastodon posts. Clients fetch public artifacts independently to confirm ownership, providing a relay-agnostic cross-reference layer complementary to this week's Namecoin .bit NIP-05 work.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #22</title>
      <description>Nostr VPN v4.0.10 BoringSSL throughput jump, Marmot completes user blocking, Grain v0.6.0 four NIPs land, with NIP-78 and NIP-98 deep dives.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwdeexyerjd3cxgenxvedv368wvnyva6njeqytlz84</link>
      <pubDate>Mon, 18 May 2026 18:41:22 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1779129682333-dtw2dgu9d</guid>
      <enclosure url="https://blossom.primal.net/05bb76bac48d16cbf27b8afda60bec63ace8e0aa922492b5d7894d3662b49641.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>58:04</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/e452fe620cda707b5af4287867be417bb63e0bde5467c75e371a2e1be08d05f3.png" />
      
      
      <content:encoded><![CDATA[### News

- **0:00 Intro**
  This episode follows Nostr Compass #22 across top stories, shipping releases, in-development work, five new NIP proposals, and deep dives on NIP-78 and NIP-98.

- **0:20 Nostr VPN v4.0.10 — eight releases, full FIPS migration**
  Nostr VPN shipped v4.0.1 through v4.0.10, with v4.0.8 swapping AEAD to BoringSSL ChaCha20-Poly1305 in ring 0.17 for roughly 2x TCP throughput. The week also rebuilt device pairing in v4.0.1, improved LAN discovery in v4.0.2, fixed NAT traversal in v4.0.6, added sendmmsg batching in v4.0.9, and overhauled pairing UX in v4.0.10.

- **3:18 Marmot / White Noise — user blocking, video attachments, 31 MDK PRs**
  White Noise v2026.5.7+24 completes Marmot user blocking across invites, timelines, search, and notifications, with video attachments and offline notice coverage. Supporting work spans 31 merged PRs including MDK PR #258 and frontend fixes in PR #653, PR #644, and PR #635.

- **5:31 Grain v0.6.0 — NIP-40, NIP-50, NIP-70, NIP-45**
  Grain v0.6.0 adds NIP-40 expiration, NIP-50 search, NIP-70 protected events, and NIP-45 count queries, plus safer defaults and improved backpressure handling.

### Releases

- **7:33 Citrine v3.0.0-pre1 — built-in Tor, relay aggregation, Negentropy**
  Citrine v3.0.0-pre1 adds built-in Tor, relay aggregation, and NIP-77 Negentropy sync in PR #139, with Tor URL routing in PR #137 and battery improvements in PR #132.

- **11:51 Amber v6.1.0-pre2 — new-app connection flow improvements**
  Amber v6.1.0-pre2 fixes bunker dialog lifecycle, invalid-request handling, intent rate limiting, and signing hot-path leaks in PR #430.

- **13:38 Alby Hub v1.22.2 — AI & Agents page, Core Lightning support**
  Alby Hub v1.22.2 adds an AI and Agents page for MCP-compatible tools, on-chain wallet mode, transaction label improvements, settings redesign, and Core Lightning backend support alongside LND and LDK.

- **14:54 Mostro — concurrent taker bonds, mostro-core v0.11.0**
  Mostro merged concurrent taker bonds in PR #733 with spec alignment in PR #735. mostro-core v0.11.0 adds bond actions and statuses in PR #144 and PR #143, with mostro-cli v0.15.0 following.

- **16:29 Jumble — five releases, grouped notifications, Mac support**
  Jumble shipped v26.5.2 through v26.5.6 with grouped notifications, macOS zip auto-update support, emoji picker, recent search, and account persistence fixes after moving to a stable app:// origin.

- **17:42 Nostrord — NIP-29 group share, media upload, Arch Linux packages**
  Nostrord shipped v1.0.0 through v1.0.2 with Arch packages in PR #44, media paste in PR #46, and NIP-29 group sharing in PR #49.

- **19:37 FIPS v0.3.0 — cross-platform, Nostr peer discovery, LAN gateway**
  FIPS v0.3.0 adds Nostr-mediated peer discovery with STUN-assisted NAT traversal via kind 37195 adverts and NIP-59 signaling, plus a fips-gateway binary for unmodified LAN hosts and the same BoringSSL throughput improvements contributed from Nostr VPN.

- **23:58 Camelus v1.10.1 — desktop builds for Windows & Linux**
  Camelus v1.10.1 adds Windows and Linux desktop builds beyond its Android distribution.

- **24:36 Flotilla v1.8.0 — video calls, email rendering, room mentions**
  Flotilla 1.8.0 adds video calls in voice rooms, HTML email rendering via welshman updates, room mentions, expanded space search, native invite sharing, and always-visible calendar event dates in NIP-29 rooms.

- **26:27 Calendar by Formstr v1.5.1 — appointment scheduling, Android sync**
  Calendar by Formstr shipped v1.5.0 and v1.5.1 with appointment scheduling in PR #89, Android calendar sync in PR #123, notifications in PR #130, and relay publish feedback in PR #118.

### Project Updates

- **29:57 Amethyst — scheduled posts, NIP-9A community rules, desktop local relay**
  Amethyst merged 78 PRs including scheduled posts in PR #2765, embedded desktop relay support in PR #2841, and first client-side NIP-9A enforcement in PR #2798 through PR #2800. Security and media updates include log redaction in PR #2812 and NIP-92 HLS publishing in PR #2821.

- **33:57 Shopstr — MCP audit logging, session security**
  Shopstr added MCP audit logging in PR #456, session pinning and TTL eviction in PR #477, and reserved slug protections in PR #476.

- **34:48 Dart NDK — web support, seal signature verification**
  Dart NDK added web cache persistence in PR #571, NIP-59 seal verification in PR #595, and public tag parsing fixes in PR #597.

- **35:23 rust-nostr — tag refactor, proxy connection rework**
  rust-nostr merged tag normalization in PR #1347, Proxy connection rework in PR #1351, and multi-filter subscription verification fixes in PR #1349.

- **35:58 Sprout v0.0.10 & v0.0.11**
  Sprout shipped v0.0.10 and v0.0.11 with mention autocomplete, image download support, and agent error-handling fixes.

- **36:17 Clave — multi-account NostrConnect rollout**
  Clave promoted Connect to a top-level tab in PR #52 and fixed a per-account bunker connection-cap bypass with three-layer enforcement.

- **38:15 Tamagostrich — NIP-78 Tamagotchi with sats rewards**
  Tamagostrich is a browser pet game where state syncs via NIP-78 kind 30078 events and milestone rewards pay out through NIP-47 to the user’s lud16 address.

### NIP Updates

- **40:35 NIPs: PR #2331 — NIP-9A Verifiable Community Rules — Open**
  PR #2331 proposes NIP-9A kind 34551 machine-readable community rules with client-side pre-send validation, complementing NIP-72 community definitions.

- **42:55 NIPs: PR #2335 — Reservation Events for Nostr Marketplaces — Open**
  PR #2335 defines kind 32122 reservations, kind 1326 transition audits, and kind 32124 reviews, with private negotiation over NIP-59 gift wraps.

- **45:19 NIPs: PR #2334 — Escrow Services for Nostr Marketplaces — Open**
  PR #2334 proposes kind 30303 escrow service advertisements and kind 17388 trusted-provider declarations for EVM-settled marketplace flows.

- **46:56 NIPs: PR #2333 — Accommodation Listings for NIP-99 — Open**
  PR #2333 extends NIP-99 listings with H3 geospatial tags and accommodation-specific profile fields for short-term rentals.

- **48:00 NIPs: PR #2332 — NIP-BC Onchain Zaps (kind 8333) — Open**
  PR #2332 proposes kind 8333 onchain zap receipts using Taproot addresses derived from Nostr pubkeys, with optional inline SPV proof tags and signPsbt extensions for NIP-07 and NIP-46.

### NIP Deep Dives

- **51:24 NIP Deep Dive: NIP-78 (App-Specific Data)**
  NIP-78 standardizes kind 30078 parameterized replaceable events where a `d` tag scopes application-specific JSON or text for cross-device sync. Public data can remain plaintext while private payloads use NIP-44 or NIP-04 encryption, and apps avoid collisions by prefixing `d` tags with application names. Production users include Tamagostrich, Wisp, NosPress, and multiple client settings sync implementations.

- **53:32 NIP Deep Dive: NIP-98 (HTTP Auth)**
  NIP-98 defines kind 27235 signed HTTP auth events sent as `Authorization: Nostr` headers, binding method, URL, and optional body hash for replay-resistant API access without passwords. Servers authenticate any pubkey holder without prior registration, and the pattern is used in Blossom BUD-01, Routstr, Sprout, Clave, Alby Hub, and Nostr.build uploads.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #21</title>
      <description>MDK 0.8.0 MIP-05 notifications, LaWallet NWC v0.10.0 full wallet, Amethyst Nests JWT fixes, ngit GRASP fixes, NIP-53 and NIP-34 git dives.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwdec8q6rqwpnxsunqdfdd4jx7ut5wvekwmc46xsx7</link>
      <pubDate>Fri, 15 May 2026 10:27:14 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1778840834905-mdoqts3go</guid>
      <enclosure url="https://blossom.primal.net/e999a8cdaa262cc1ad9c762c4c7d19e581b4f30132c6663a00d062e510e4c6be.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:21:23</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/4404dd629d8b3e60171f5f7c6d9fcc9f1ac612d3b21ea66879fcd51675e58e32.png" />
      
      
      <content:encoded><![CDATA[### News

- **0:00 Intro**
  This episode follows Nostr Compass #21 across lead stories, tagged releases, unreleased changes, new projects, protocol drafts, and two NIP deep dives.

- **0:18 MDK 0.8.0 — MIP-05 notification primitives & addressable key packages**
  MDK v0.8.0 ships first MIP-05 notification primitives in PR #235, addressable NIP-51 key packages, mixed-version compatibility, and validation hardening across admin actions, commits, storage, and replay handling.

- **2:50 LaWallet NWC v0.10.0 — full monorepo & end-user Wallet**
  LaWallet NWC v0.10.0 ships the full monorepo with admin dashboard, end-user Wallet, Activity Log, and a LightningAddress 1→N plus NWCConnection schema for per-address NIP-47 routing in PR #191 through PR #196.

- **3:44 Amethyst — Nests keep-alive, JWT resilience & lifecycle subscriptions**
  Amethyst stabilizes NIP-53 Nests with JWT overlap in PR #2733, relay keep-alive in PR #2730, lifecycle-aware subscriptions in PR #2728, and speaking-participant UI in PR #2724.

- **5:35 ngit v2.4.2 & v2.4.3 — GRASP server detection & multi-remote state events**
  ngit shipped v2.4.2 and v2.4.3, fixing GRASP server detection for NIP-34 PR submissions and filtering multi-remote state events to the correct maintainer set.

- **15:29 GRAIN v0.5.4 — production hardening & silent data loss fix**
  GRAIN v0.5.4 fixes a silent Docker quick-start data-loss bug, addressable read correctness after restart, connection-tracking issues from the v0.5.x lockup chain, and adds per-IP rate limiting plus IP blacklist controls.

- **16:10 Mostro Core v0.10.1 — PGP-signed release artifacts**
  Mostro Core v0.10.1 adds PGP-signed release artifacts and a verify-release flow following v0.10.0 NIP-59 gift-wrap module work.

### Releases

- **17:13 Clave v0.2.0 — multi-account iOS with NIP-46 (Nostr Connect) signing**
  Clave v0.2.0 adds up to four isolated accounts on iOS with per-account APNs routing in PR #22, activity audit links in PR #19, and cold-start delivery fixes in PR #16.

- **25:03 Wisp v1.0.3 → v1.0.5 — stability work**
  Wisp shipped v1.0.3 through v1.0.5 with Thumbhash previews in PR #506, tab-switch performance in PR #514, and stale back-stack fixes in PR #516.

- **25:50 Amber 6.1.0-pre1 — layout & stability fixes**
  Amber v6.1.0-pre1 improves connect-app layout in PR #416, notification handling in PR #412, and signer activity lifecycle in PR #411.

- **27:07 Routstr Core v0.4.3 — payment, refund & usage reporting**
  Routstr Core v0.4.3 improves payment and refund handling, cost tracking, usage reporting, and fixes around API key display, message handling, and model validation.

- **31:34 Nostria v3.1.37 → v3.1.41 — Web Bookmarks & Auto theme**
  Nostria shipped v3.1.37 through v3.1.41 with NIP-B0 (Web Bookmarks) support, Auto theme, in-app PDF viewing, and editor and media-player polish.

- **34:06 NoorNote v0.8.9 — desktop first-launch empty screen fix**
  NoorNote v0.8.9 fixes an empty welcome and login screen on first desktop launch.

- **34:16 Kubo v0.3.4 → v0.4.1 — child-safe Nostr video platform with parent controls & WoT feed curation**
  Kubo shipped v0.3.4 through v0.4.1 as a Ditto-based child-safe video platform with parent time controls, trust levels, NIP-72 community curation, and NIP-66 relay discovery at kubo.watch.

### Project Updates

- **35:47 Sprout Desktop v0.0.4 & v0.0.5 — NIP-0A agent auth & pair-relay sidecar**
  Sprout shipped Desktop v0.0.4 and v0.0.5 with NIP-OA agent auth in PR #471, unified membership enforcement in PR #490, and NIP-AB pair-relay sidecar support in PR #467 and PR #470.

- **44:02 nostream — Marmot relay support & NIP-25 reactions**
  nostream merged Marmot relay support in PR #602, NIP-25 reactions in PR #589, geohash prefix matching in PR #586, and subscription limit hardening in PR #600.

- **45:25 strfry — per-connection observability & reduced nofiles ceiling**
  strfry merged per-connection observability in PR #218, monitor fanout performance work in PR #224, Prometheus counter fixes in PR #225, and operational hygiene updates in PR #235.

- **46:00 Damus — Purple GIF proxy & compaction UX**
  Damus replaced Tenor GIF access with a Damus Purple proxy in PR #3737 and improved large-database compaction UX in PR #3733 and PR #3732.

- **46:41 Primal Android — Explore, alerts & NIP-05 verified badge**
  Primal Android merged Explore landing in PR #1041, alerts filters in PR #1045, and NIP-05 badge flicker fixes in PR #1043.

- **47:08 Alby Hub — NWC payments from app connections**
  Alby Hub merged app-connection payments in PR #2267 and simplified onchain receive routing in PR #2268 on its NIP-47 surface.

- **47:28 routstrd-auth — Dockerized Routstrd for teams with NIP-98 auth & npub RBAC**
  routstrd-auth adds npub RBAC roles, NIP-98 HTTP auth, SQLite-backed /usage reporting, and Dockerized team deployment paths for shared Routstrd operation.

- **50:00 Routstrd — Hermes integration & remote mode**
  Routstrd integrated Hermes Agent provider discovery in PR #22, added remote mode in PR #20, and tightened client registration rules in PR #16.

- **50:52 diVine — NIP-07 web sign-in & 16-locale key parity**
  diVine added NIP-07 web sign-in in PR #3994, full 16-locale key parity in PR #3992, and notification grouping improvements in PR #3944.

- **51:37 OpenChat — 18 iterative UI improvements**
  OpenChat shipped iterative UI updates across releases v0.6.50 through v0.6.55.

- **51:53 whitenoise-rs — per-account database isolation & proposal upgrades**
  whitenoise-rs moved message and membership tables into per-account databases in PR #796 and PR #792, with proposal upgrades in PR #791.

- **54:09 whitenoise Flutter — leave-group, terminology consistency & Fastlane scaffolding**
  whitenoise added leave-group UI in PR #604, Follow and Unfollow terminology consistency in PR #595, and Fastlane release scaffolding in PR #601.

- **56:17 Angor 0.2.21 — compact app flows & key provider / network-switch hardening**
  Angor 0.2.21 ships compact mobile flows in PR #819, secure key provider support in PR #804, and network-switch cache resets in PR #806.

- **57:11 Keydex — data layer, recovery flow & steward owner-name display**
  Keydex merged data-layer refactor planning in PR #126, recovery-flow black-screen fixes in PR #122, and steward owner-name display corrections in PR #121.

- **58:23 BitMacro Signer — self-hostable NIP-46 bunker with client-side key encryption**
  BitMacro Signer is a self-hostable NIP-46 bunker with client-side key encryption before server storage.

- **58:52 gnostr — git implementation built on Nostr**
  gnostr is a Nostr-native git implementation with its own working-tree commands, distinct from git-remote-nostr.

- **59:40 nostr-archive — content-addressed archive spec on Nostr & Blossom**
  nostr-archive drafts a content-addressed archive specification and reference implementation on Nostr and Blossom.

- **1:00:05 flower-cache — local Blossom cache server**
  flower-cache provides a local Blossom cache server for hot local blob mirroring without repeated upstream fetches.

- **1:00:20 micro-vpn-ansible — Ansible playbooks for VPN over NIP-34**
  micro-vpn-ansible hosts Ansible playbooks for micro VPN deployment as a NIP-34 repository.

### NIP Updates

- **1:00:52 Draft Proposal: Brokerless hashrate market over Nostr — Open**
  The brokerless hashrate market draft proposes peer-to-peer Stratum listings and contract escrow over Nostr events without broker-controlled web apps.

- **1:02:13 Draft Proposal: Profile Colors — deterministic visual identity — Open**
  The Profile Colors draft defines deterministic pubkey-derived colors for consistent cross-client UI identity.

- **1:02:50 Draft Proposal: Namecoin-Track NIPs — identity, relays, TLS & reputation — Open**
  The Namecoin-Track draft cluster proposes Namecoin-anchored identity, relay metadata, TLS pinning, and reputation records.

### NIP Deep Dives

- **37:35 NIP Deep Dive: NIP-53 (Live Activities)**
  NIP-53 defines live streams (30311), meeting spaces (30312), conference events (30313), listener presence (10312), and live chat (1311) with participant proof requirements and room/event separation. This week’s Amethyst Nests stability sprint hardens the production failure modes this spec needs at scale.

- **1:03:50 NIP Deep Dive: NIP-34 (git stuff)**
  NIP-34 standardizes git repository announcements (30617), state pointers (30618), patches (1617), pull requests (1618), issues (1621), and status events (1630-1633) on relays while git data remains on forge servers. Active usage this week includes joinmarket-ng, GitWorkshop.dev, and ngit-indexer, building on last week’s in-browser PR merge workflow.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #20</title>
      <description>GitWorkshop expands git-over-Nostr review, Routstrd routes paid inference, and Six Nostr Aprils tracks protocol history, including NIP-34 and NIP-67 updates weekly.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwdecxgen2dfcxccn2deddyehquthvenkkugtyl2nf</link>
      <pubDate>Fri, 08 May 2026 10:19:46 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1778235586157-i3pqwfgkq</guid>
      <enclosure url="https://blossom.primal.net/9109f346685bc0cd53473f7ad73e63f2961919d9409cd23afdaabe5c81d17413.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:27:34</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/458209afb18ab50c6a79e4cecc573dd07152109e99db468f93a16c9f962226e9.png" />
      
      
      <content:encoded><![CDATA[### News

- **00:00 Intro**
  Episode 20 follows Nostr Compass #20 across lead stories, tagged releases, unreleased changes, protocol work, and a multi-year April retrospective.

- **00:33 GitWorkshop ships in-browser PR merge, repository following, and a bandwidth-efficient git explorer**
  GitWorkshop added in-browser PR merge for GRASP repos, repository stars and follows via NIP-51 lists, and a more efficient git explorer built on GRASP's client/server model. It also introduced kind 1111 inline review comments with NIP-22 and NIP-32-based experimental moderation primitives.

- **07:55 Routstrd launches a local router for inference over Nostr**
  Routstrd is a local OpenAI-compatible daemon that discovers providers through kind 38421 announcements and routes requests using RIP scoring and failover. It pays providers with Cashu through local wallet tooling and keeps provider discovery and routing on Nostr.

### Releases

- **17:08 ngit v2.4.2 fixes GRASP server detection for PR submissions**
  ngit v2.4.2 fixes GRASP server detection for PR-kind submissions, while v2.4.1 fixed clone and fetch failures when open PR git data was missing from specified servers.

- **17:54 Wisp v1.0.0 graduates from beta**
  Wisp shipped v1.0.0 and v1.0.2, carrying forward Normie Mode, For You feed, NIP-29 group config, and NIP-65 broadcast from prior work. v1.0.2 adds Android 15 page-size support, QR scan tab access, inline video download, and notification list performance fixes.

- **20:25 grain v0.5.2 fixes WebSocket lockup, v0.5.3 continues polish**
  grain shipped v0.5.2 as a critical lockup fix for WebSocket and filter paths introduced in v0.5.0, then followed with v0.5.3. Operators on v0.5.0 and v0.5.1 are advised to upgrade.

- **28:16 Mostro Core v0.10.0 and Mostro Mobile v1.2.5 adopt NIP-59 dual-key gift wrap**
  Mostro Core v0.10.0 adopts NIP-59 split identity and wrapping keys, with migration work in Mostro PR #718 and mostro-cli PR #165. Mostro Mobile v1.2.5 adds maker age filtering in PR #581 and order-flow fixes.

- **30:09 marmot-ts v0.5.0 ships addressable KeyPackages**
  marmot-ts v0.5.0 adds dual support for legacy kind 443 and addressable kind 30443 KeyPackages in PR #68. The release removes old storage classes and moves invite and group management onto MarmotClient surfaces.

- **32:49 CruxCoach v0.1.3 ships encrypted climbing data backup with Nostr and Blossom**
  CruxCoach v0.1.3 adds opt-in encrypted cloud backup where a Nostr keypair anchors account identity and local encryption key derivation. It mirrors ciphertext to Blossom servers and integrates NIP-46, NIP-17, NIP-65, and Quartz.

- **36:50 Meiso v1.3.0 adds subtasks, Blossom attachments, and NIP-89 tagging**
  Meiso v1.3.0 adds subtasks, task relationship links, and Blossom attachment flows via NIP-96, while tagging events with NIP-89. It also improves relay cold-start behavior and Amber reuse.

- **38:07 NoorNote, Nostria, Nostr Calendar, nos2x-fox, and library releases**
  NoorNote shipped v0.8.7, v0.8.8, and v0.8.9, while Nostria shipped v3.1.29 through v3.1.31. Additional updates include Nostr Calendar v1.4.1, nos2x-fox v1.19.0, nostr-double-ratchet v0.0.97, nostr-wot-sdk 0.9.0, and nostr-tools PR #535.

- **44:19 applesauce 6.0.0 removes legacy event factories and adds Blossom URI parsing**
  applesauce-core@6.0.0 removes legacy event factory helpers and expands link and Blossom URI parsing, including BUD-10 regex coverage. Companion releases applesauce-content@6.0.0, applesauce-actions@6.0.0, and applesauce-wallet-connect@6.0.0 add BUD-10 nodes, NIP-51 list factories, and direct NIP-47 connect URI access.

### Project Updates

- **48:57 Amethyst advances Nests audio rooms with MoQ interop testing**
  Amethyst added MoQ cross-client interop testing in PR #2622, plus Nest UX and feed freshness changes in PR #2625, PR #2620, PR #2634, and PR #2635. The same week removes custom secp256k1 in PR #2627 for libschnorr256k1.

- **50:25 nostream adds NIP-65 relay list support and NWC payments**
  nostream adds kind 10002 relay list support in PR #585, NWC payments processor support in PR #539, and dead-connection cleanup fixes in PR #438.

- **50:52 FIPS adds Nostr-based udp:nat bootstrap**
  FIPS merged PR #53, adding Nostr-advertised udp:nat bootstrap with encrypted signaling, STUN-based address discovery, UDP hole punching, and rollback logic for failed traversal adoption.

- **51:37 strfry adds per-connection observability**
  strfry merged PR #214 for per-connection observability metrics, PR #204 for label normalization, and PR #215 for community integrations documentation.

- **52:06 Sprout adds Owner Attestation and multi-workspace support**
  Sprout adds NIP-OA owner attestation in PR #406, multi-workspace support in PR #409, channel and compose improvements in PR #411, and read-state sync via NIP-RS in PR #413, PR #420, and PR #422.

- **53:07 Zap Cooking adds recipe packs, delete requests, and bunker login**
  Zap Cooking adds NIP-09 delete requests for recipe packs in PR #367, reliability and retry logic in PR #366, one-click pack publishing in PR #365, and NIP-46 bunker login in PR #331.

- **53:53 Whitenoise-rs encrypts its local database**
  whitenoise-rs adds SQLCipher at-rest database encryption in PR #758, plus ongoing session refactor work in PR #775, PR #772, and PR #773. On mobile, whitenoise PR #577 enables daemon auto-restart after reboot.

- **58:04 Nostrord: a NIP-29 client built with Kotlin Multiplatform and WASM**
  Nostrord is a new NIP-29 group client targeting Discord-style workflows, built with Kotlin Multiplatform and WebAssembly and live at web.nostrord.com. It interoperates with existing NIP-29 relays and is an OpenSats grant recipient.

- **59:02 Clave brings NIP-46 remote signing to iOS via APNs**
  Clave is an iOS signer that handles NIP-46 requests while the app is backgrounded by using APNs-triggered extension windows. It uses NIP-44 encrypted request handling, NIP-98 token registration auth, and supports bunker:// and nostrconnect:// pairing.

- **1:02:12 Treasures: decentralized geocaching on Nostr**
  Treasures publishes caches as kind 37516 addressable events and records finds through QR-verified physical-visit proof data. It supports NIP-57 zap flows between finders and cache creators and is live at treasures.to.

- **1:03:41 smesh v0.5.1: self-hosted Nostr relay, client, and signer in one stack**
  smesh bundles relay, client, and signer components with AUTH, search, Blossom support, NIP-07 signing, NIP-04 and NIP-44 encryption, and MLS support. The stack also includes the gitea-nostr-auth OAuth2 and OIDC bridge.

- **1:05:20 Surveil: a Magic: The Gathering deck builder on Nostr**
  Surveil publishes decks as kind 37381 events, combines NIP-22 threaded comments, NIP-25 reactions, and kind 30078 profile data, and shipped v0.1.6 with mobile polish and deck UI updates. The app is available on web and through Zapstore.

- **1:06:43 Smaller additions: Fundstr, Nod City, deploy-nsite-to-pages, and null–nostr**
  Fundstr adds creator funding over Nostr and Cashu, Nod City ships signed review events with zap support, deploy-nsite-to-pages automates nsite to GitHub Pages deploys, and null–nostr continues client development with MLS, Amber, and NIP-50 support.

### NIP Updates

- **1:10:24 NIP-34 git repositories: remove unused refs tag extension (PR #2325) — Merged**
  PR #2325 removes an unused refs extension from NIP-34 to reduce ambiguity for git-over-Nostr implementations.

- **1:10:45 NIP-34 git repositories: remove incorrect NIP-09 claim (PR #2326) — Merged**
  PR #2326 removes an incorrect claim that NIP-09 deletion can reset repository state, clarifying that deletion requests are client-side hints.

- **1:11:18 GitWorkshop kind 1111 inline review comments — Open**
  GitWorkshop's kind 1111 inline review comments are documented in its NIP.md and used in production, but are not yet a formal NIP proposal. Related verdict and suggestion primitives remain draft-level and implementation-driven.

- **1:12:16 Nostr mail core and Nostrmon — Open**
  Nostr mail core and Nostrmon circulated as custom draft proposals this week. They are not merged NIPs.

- **1:12:53 NIP-67: EOSE Completeness Hint (PR #2317) — Open**
  PR #2317 continues iterating on an explicit EOSE completeness signal so relays can positively indicate full stored-event delivery.

### NIP Deep Dives

- **1:13:09 Six Nostr aprils**
  This segment traces April milestones across protocol eras, from the pre-NIPs document phase to NIP-34 hardening and grant-driven adoption work in 2026. It emphasizes how client pressure, library maturity, and maintenance funding shaped protocol evolution.

- **01:13:23 April 2021: the protocol document before the NIPs repo**
  April 2021 had no commits in the main protocol repository window, reflecting a pre-market phase where Nostr was still a compact relay and event model awaiting sustained contributor growth. The core architecture already existed in the original 2020 protocol article.

- **01:14:02 April 2022: NIPs still lived in the main repo**
  April 2022 was the final month before NIPs moved into a dedicated repo, with incremental main-repo changes around NIP-12, kinds lists, and JavaScript spec examples. Client and library foundations were beginning to consolidate during this period.

- **01:15:17 April 2023: post-Damus application expansion**
  After Damus launch, April 2023 protocol changes mirrored live client pressure around zaps, marketplaces, metadata, count semantics, and identity links. One merged PR landed while broader commit activity expanded across several active contributors and app surfaces.

- **01:18:06 April 2024: private messaging, git-over-Nostr, and maintainer support**
  April 2024 merged NIP-46 terminology fixes and substantial NIP-34 improvements, while NIP-17 gift-wrapped messaging landed in the same month. OpenSats long-term support grants also shifted maintenance economics toward sustained infrastructure work.

- **01:21:14 April 2025: dense NIP cleanup and Blossom formalization**
  April 2025 merged sixteen NIP PRs, including NIP-B7 Blossom interaction formalization, NIP-65 relay list cleanup, and NIP-26 deprecation. Protocol cleanup and application expansion ran in parallel with broad client and library shipping activity.

- **01:23:44 April 2026: NIP-34 hardening, badges, and adoption-focused grants**
  April 2026 merged NIP-58 badge model changes and three NIP-34 usability and correctness updates, including nostr:// clone URL support and cleanup of incorrect language. The period also coincided with OpenSats grant support for desktop clients, messaging, group UX, and onboarding.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #19</title>
      <description>Episode 19 tracks major client releases, relay hardening, Marmot interoperability work, and NIP proposals, plus deep dives on communities and zaps.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwdeh8qungde4xcmnsdpdvenrxenzwp5kvecgqu47g</link>
      <pubDate>Mon, 04 May 2026 11:39:16 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1777894756784-ff3fbpifg</guid>
      <enclosure url="https://nostr.download/6e0ee90e56db3e5aa43bf195df4bab32e1f8429677f2b208e0754d251d8e1c66.oga" type="audio/ogg" length="0" />
      
      <itunes:duration>02:19:33</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://nostr.download/0bc367c8c5d25a34662feff5fa0c7e04743143de66e9db719eb284853ba38b6a.png" />
      
      
      <content:encoded><![CDATA[### News

- **00:00 Intro**
  This episode follows Nostr Compass #19 across top stories, shipping releases, in-development work, new projects, NIP updates, and two deep dives.

- **02:48 Amethyst ships Marmot MIP compliance, NIP-72 communities, zap goals, and MoQ audio rooms**
  Amethyst merged 57 PRs focused on Marmot compliance, NIP-72 communities, and audio rooms over Media over QUIC. Highlights include MIP and MLS work in PR #2462, PR #2466, and PR #2493, plus NIP-72 support in PR #2468, zap goals in PR #2469, and MoQ audio rooms in PR #2494.

- **19:16 TollGate v0.1.0 stabilizes pay-per-use internet over Nostr and Cashu**
  TollGate shipped v0.1.0 with a layered spec for prepaid connectivity using Cashu. The release pins protocol and transport definitions in TIP-01, TIP-02, HTTP-01..03, NOSTR-01, and WIFI-01.

- **46:28 nostream merges 53 PRs for NIP-45, NIP-62, compression, and query hardening**
  nostream merged 53 PRs adding NIP-45 COUNT support in PR #522, NIP-62 advertisement in PR #544, import/export compression in PR #514, and filter/schema/query correctness in PR #534. It also reached full NIP-11 parity in PR #557.

### Releases

- **00:20 Nostria v3.1.26 through v3.1.28 add background music playback on Android**
  Nostria shipped v3.1.22 through v3.1.28, with Android background music playback landing in v3.1.26. Follow-up releases v3.1.27 and v3.1.28 hardened media service behavior.

- **48:41 Primal Android ships Explore tab, NIP-05 verification, and audio player**
  Primal Android merged 11 PRs including an Explore tab in PR #1021, feed editor in PR #1015, NIP-05 verification in PR #994, and inline audio playback in PR #997. It also adds wallet-QR driven NIP-46 pairing in PR #1018.

- **50:01 strfry adds Prometheus write-path metrics and fixes NIP-42 AUTH envelope**
  strfry added write-path metrics in PR #194, per-connection traffic logging in PR #197, and configurable filter tag limits in PR #192. Protocol behavior for NIP-42 AUTH failures was corrected to use the proper OK envelope in PR #201.

- **51:41 Shopstr hardens storefront security across 13 PRs**
  Shopstr merged 13 security-heavy PRs, including XSS and script-injection fixes in PR #434 and PR #417, auth fixes in PR #418, PR #433, and PR #419, plus SSRF remediations in PR #435 and PR #414. Functional issues were also addressed in PR #421, PR #425, and PR #392.

- **53:24 Wisp v0.18.0-beta adds Normie Mode, For You feed, and NIP-29 group config**
  Wisp shipped v0.18.0-beta with fiat-centric Normie Mode in PR #462, onboarding updates in PR #464, and a For You feed in PR #469. It also adds NIP-29 group configuration in PR #471, AUTH sequencing fixes in PR #478, and NIP-65 inbox relay broadcast behavior in PR #481.

- **58:16 NoorNote v0.8.4 adds Scheduled Posts and live stream zapping**
  NoorNote shipped v0.8.4 and v0.8.5, adding scheduled signed-event publishing through a NoorNote relay and live-stream zapping tied to NIP-53. The v0.8.5 follow-up fixes timeline deduplication on long Android scrolls.

- **01:00:11 topaz v0.0.2 ships a Nostr relay for Android**
  topaz shipped v0.0.2 as a Kotlin-first Android relay package, focusing on a working personal relay running directly on a phone.

- **01:01:28 StableKraft v1.0.0 ships the first stable music-and-podcast PWA release**
  StableKraft reached v1.0.0, a Next.js PWA for podcast-based music discovery with Nostr auth and Lightning flows. The same week added feed-ingestion fixes including OPML cache and XML stripping and a reparse window reduction.

- **01:02:29 NipLock ships a NIP-17-based password manager**
  NipLock stores credentials as self-addressed NIP-17 gift-wrapped DMs so entries replicate across user devices. It supports raw keys, nos2x, and Amber via NIP-46.

- **01:07:37 flotilla-budabit polishes its NIP-34 repo surface**
  flotilla-budabit, a fork of Flotilla, shipped NIP-34 workflow polish including discussion controls, sticky tabs, saved relay announcement loading, and patch status sync.

- **01:08:55 rx-nostr 3.7.2 through 3.7.4 add default verifier and optional constructor args**
  rx-nostr shipped 3.7.2, 3.7.3, and 3.7.4. PR #192 adds a default signature verifier, crypto@3.1.6 fixes verification failures, and PR #195 makes createRxNostr() args optional.

- **01:09:46 Keep Android v1.0.0 ships with reproducible builds and zero trackers**
  Keep shipped v1.0.0 with reproducible builds in PR #241, ZXing migration in PR #248, and a zero-trackers Exodus Privacy report in PR #252. Distribution support for zapstore lands in PR #256.

- **01:10:53 Flotilla 1.7.3 and 1.7.4 add kind-9 wrapping for richer NIP-29 rooms**
  Flotilla shipped 1.7.3 and 1.7.4, introducing kind-9 wrapping for non-chat payloads in NIP-29 rooms, linked to NIP PR #2310. The release line also includes polls, NIP-46 Aegis URL support, invite sharing, and feed pagination improvements.

- **01:12:12 WoT Relay v0.2.1 migrates eventstore to LMDB**
  WoT Relay shipped v0.2.1 with LMDB eventstore migration in PR #97, security dependency updates in PR #99, and NIP-11 metadata updates in PR #100.

- **01:15:09 Formstr suite: Pollerama security pass, Forms i18n, Calendar RRULE support**
  The Formstr suite merged 26 PRs across Pollerama, Formstr, and Nostr Calendar with security and product updates. Pollerama hardened key and DM handling in PR #182, PR #175, and PR #171, while Formstr added media/i18n/import support in PR #475, PR #439, and PR #466, plus privacy fixes in PR #463. Nostr Calendar shipped v1.3.0 and v1.4.0 with RRULE support in PR #107 and UTC recurrence fixes in PR #101.

- **01:19:12 Also shipped: notedeck, nostr.blue, cliprelay, Captain's Log**
  notedeck shipped v0.10.0-beta.4, nostr.blue shipped v0.8.6 with Dioxus 0.7.5 and Android audio bridge work, and cliprelay shipped desktop v0.0.3 and android v0.0.4. Captain's Log published alpha builds with sync relay liveness detection.

### Project Updates

- **01:20:27 whitenoise-rs refactors to session-scoped account views**
  whitenoise-rs merged 15 PRs shifting from global singletons to per-account AccountSession and AccountManager surfaces, starting with PR #743 and scoped relay handles in PR #753. Session-owned dispatch closes in PR #770.

- **01:26:19 White Noise app adds block/unblock UI, leave-group, and offline notices**
  White Noise shipped group lifecycle and moderation UX updates including block/unblock in PR #578 on top of PR #573, group leave/delete wiring in PR #571 and PR #572, and offline notices in PR #569 and PR #576. PR #585 narrows key package deletion to legacy keys.

- **01:32:04 MDK adds mixed-version invite support and SelfUpdate convergence**
  MDK merged invite and state-rotation compatibility work, led by mixed-version invite capability negotiation in PR #261 and SelfUpdate convergence in PR #264. Additional robustness changes include PR #262, PR #256, PR #259, and proposal introspection in PR #265.

- **01:35:02 nostter adds NIP-44 encryption across people lists, bookmarks, and mutes**
  nostter added NIP-44 encryption to mute lists, bookmarks, and people lists via PR #2088, PR #2089, and PR #2090. It also removes a legacy migration path in PR #2087.

- **01:35:39 zap.cooking ships Nourish scoring and a reusable comment thread**
  zap.cooking merged 20 PRs, adding Nourish recipe scoring in PR #317 and PR #319. It also extracted a reusable CommentThread from PR #299 through PR #302, with further recipe and profile polish in PR #309, PR #307, and PR #310.

- **01:36:18 ridestr extracts shared rider coordinator**
  ridestr merged 10 PRs that modularize Compose UI and move rider and driver protocol logic into a shared coordinator in PR #70. It also adds kind 3189 driver ping receiving in PR #60.

- **01:37:20 Blossom drafts a BUD-01 Sunset header for blob expiration**
  Blossom opened PR #99 to add a Sunset header to BUD-01 so servers can advertise blob expiration timing before clients hit missing-content errors. The draft uses RFC 8594 semantics as advisory metadata.

- **01:38:14 Forgesworn publishes a 29-repo cryptographic toolkit for Nostr**
  Forgesworn published 29 repositories spanning signing, identity, attestations, trust, and paid API discovery, including nsec-tree, Heartwood, Signet v1.6.0, and nostr-attestations. The stack also includes toll-booth, toll-booth-dvm, 402-announce, 402-indexer, nip-drafts, and anvil.

- **01:44:46 ShockWallet ships Nostr-native Lightning wallet sync and multi-node connections**
  ShockWallet shipped wallet and node-pairing improvements including channels dashboard updates in PR #608, admin invite QR flow in PR #606, and metrics readability in PR #607. Its sync model uses NIP-78 for multi-device app state and complements NIP-47 wallet connect flows.

- **01:46:32 Nostrability issues migrate to git over Nostr after GitHub censorship**
  Nostrability moved issue tracking to git over Nostr after its GitHub organization was removed, preserving ongoing interoperability reports on Nostr-native infrastructure.

- **01:47:57 nowhere encodes full websites into URL fragments and routes orders through Nostr**
  nowhere serializes complete sites into URL fragments with compression and base64url encoding so hosts never receive content-bearing data. Live features use ephemeral-key Nostr messaging with NIP-44 encryption, and the project ships a companion reader at nowhr.xyz.

- **01:52:28 Small new surfaces: relayk.it and Brainstorm Search**
  relayk.it is a browser relay discovery client built with Shakespeare, and Brainstorm Search ships as a single-page Nostr search UI.

### NIP Updates

- **01:53:26 NIP-67: EOSE Completeness Hint (PR #2317) — Open**
  NIP-67 PR #2317 proposes an optional third EOSE element to signal whether a relay returned all matching stored events. The extension is backward compatible and helps clients stop pagination when completeness is explicit.

- **01:55:01 NIP-5D: Nostr Applets (PR #2303) — Open**
  PR #2303 proposes NIP-5D applets as sandboxed interactive front-end payloads, positioned between static NIP-5A sites and executable NIP-5C scrolls.

- **01:56:05 NIP-29: Subgroups spec (PR #2319) — Open**
  PR #2319 extends NIP-29 with subgroup hierarchy and moderation scoping while keeping compatibility for plain single-h tag messages.

- **01:57:05 NIP-29: Explicit role permissions on kind 39003 (PR #2316) — Open**
  PR #2316 defines explicit operation grants and optional expiries on kind 39003 role events so relay and client permission semantics are machine-readable and consistent.

- **01:57:56 NIP-11: access_control field for gated-relay discovery (PR #2318) — Open**
  PR #2318 adds optional access_control metadata to NIP-11 relay documents so clients can surface gating mode and access request endpoints.

- **01:58:35 NIP-63a: Minimal Payment Gateway Descriptor (PR #2315) — Open**
  PR #2315, previously covered in Newsletter #18, continues iterating on kind 10164 descriptor structure and subscription-tier field layout.

- **01:59:09 NIP-XX: Agent Reputation Attestations (Kind 30085) (PR #2320) — Open**
  PR #2320 proposes kind 30085 attestations for service and agent reputation, including bounded scores, evidence references, and signed target attribution for market filtering.

- **01:59:58 NIP-TPLD: Transient Private Location Data (PR #2309) — Open**
  PR #2309 continues work on kind 20411 transient location data, with ongoing tuning around NIP-44 per-recipient encryption and ttl retention semantics.

- **02:00:43 marmot-ts 0.5.0 release PR (PR #70) — Open**
  PR #70 prepares @internet-privacy/marmot-ts@0.5.0 with breaking API and storage changes, including dual key package event support and invite/group management moved onto MarmotClient.

### NIP Deep Dives

- **02:01:10 NIP Deep Dive: NIP-72 (Moderated Communities)**
  NIP-72 defines communities as kind 34550 addressable events with metadata and moderator sets, where submissions carry community `a` tags and moderator approvals are published as kind 4550 events. The design keeps moderation transparent and portable across relays because approvals are signed, auditable Nostr events and community identity is replaceable but stable via `d` tag coordinates. It trades strict gatekeeping for broad compatibility: submissions are publicly writable, while curation happens at the client read layer through approved views.

- **02:07:06 NIP Deep Dive: NIP-57 (Zaps)**
  NIP-57 standardizes Lightning-linked zap requests (kind 9734) and receipts (kind 9735) with verifiable linkage between request intent, invoice amount, and settlement preimage. It relies on LNURL callback coordination and requires clients to validate wallet-server signatures, invoice description hash commitments, and payment proof before counting receipts as real zaps. The model also supports private and anonymous zap variants, split payouts, and higher-level goal tracking as used by NIP-75 and Amethyst’s PR #2469.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass Podcast #18</title>
      <description>Episode 18 covers Amethyst&#39;s major architecture upgrades, rapid client releases, emerging Marmot tooling, and seven NIP proposals plus deep dives today.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwdek8q6nyd33xycrzwpdvfhhsdmrvaskgwg4qh8dk</link>
      <pubDate>Wed, 22 Apr 2026 10:10:11 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1776852611018-box7cgad9</guid>
      <enclosure url="https://blossom.primal.net/5fa4433c37d2671c88c4b323838d2630a5bc8c9d47de464f0715f9915822fb6a.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:50:40</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/287aa25971915427d3adcc2c9c94a77608382dcb0a99fc761caf1a22aa4e59be.png" />
      
      
      <content:encoded><![CDATA[### News

- **00:00 Intro**
  Episode 18 covers major app shipping updates, protocol proposals, and two NIP deep dives from Nostr Compass #18. The first segment opens with Amethyst, nstrfy, and HAMSTR.

- **00:30 Amethyst merges desktop Tor, C secp256k1, WebRTC calls, and multi-wallet NWC**
  Amethyst merged 29 PRs including desktop Tor in PR #2381, JNI-backed C secp256k1 in PR #2374, and a full WebRTC NIP-AC call stack in PR #2203 through PR #2211. The week also included RFC 9420 MLS updates in PR #2202, multi-wallet NIP-47 support in PR #1988, and GIF-to-MP4 compression in PR #2189.

- **10:40 nstrfy launches Nostr-native push notifications for Android**
  nstrfy launched v1.0.0 through v1.2.0 as a Nostr transport fork of ntfy-android, using kind 7741 events on relays instead of centralized push. It supports plaintext and NIP-44 encrypted payloads, NIP-55 signing via Amber, NIP-65 relay import, and NIP-40 expiration, with companion tools at nstrfy.sh.

- **26:57 HAMSTR adds Reticulum for Nostr over LoRa mesh**
  HAMSTR added Reticulum networking in PR #10, enabling Nostr event transport over LoRa mesh without internet. The project keeps AX.25 and VARA paths, documents setup in RETICULUM.MD, and also moved frontend infrastructure in PR #11.

### Releases

- **27:54 Bloom v0.1.0 ships self-hosted Blossom server and relay**
  Bloom v0.1.0 ships a Tauri v2 desktop app that bundles a Blossom media server and a Nostr relay. The release includes BUD-00 through BUD-10 support, NIP-94 metadata, and blossom:// URI resolution.

- **30:17 WaveFunc v0.1.0 and v0.1.1 launch Nostr internet radio**
  WaveFunc launched v0.1.0 and v0.1.1 with custom kinds for stations, favorites, live chat, and comments, plus NIP-50 search on a Khatru relay backend. The update includes NIP-60 Cashu wallet support, a Tauri desktop build, and Zapstore listing.

- **31:45 Snort ships v0.5.0 through v0.5.3 with security hardening and performance overhaul**
  Snort v0.5.0-v0.5.3 added audited Schnorr verification, NIP-46 hardening, improved PIN encryption, and batched WASM verification. Messaging throughput improved via PR #620, and the client added kind 7000 invoice display for NIP-90 workflows.

- **33:16 Primal Android ships 3.0.21 and redesigns feed layout**
  Primal Android v3.0.21 shipped bug fixes and followed with merged UI and feed updates including PR #1008, PR #1010, PR #1009, PR #1012, and PR #1013. Changes include unified layout, updated cards, and quick reply refinements.

- **34:14 Nostria v3.1.19 through v3.1.21 add local AI image generation**
  Nostria shipped v3.1.19-v3.1.21 with local Janus Pro image generation using WebGPU acceleration and expanded multimodal and ONNX support. The series also includes editor and dialog updates and signer login flow changes.

- **36:06 TubeStr v1.0.3 ships feed and studio updates**
  TubeStr v1.0.3 adds feed and studio updates, with onboarding improvements in PR #3 and export fixes in PR #2. The app is built on NDK and MDK for encrypted family media sharing.

### Project Updates

- **38:16 Botburrow begins development as Marmot bot platform**
  Botburrow is a new self-hosted Marmot bot platform where each bot has its own Nostr identity and MLS group participation path. The Rails dashboard connects to whitenoise-rs over a Unix socket, with command, trigger, scheduling, and storage capabilities for operators.

- **44:47 Nostr Archives adds trending feeds relay and entity resolution**
  Nostr Archives shipped backend and frontend updates including API leaderboard and engagement work in PR #118 and PR #117. Frontend additions include entity path resolution in PR #85, API docs in PR #86, and a trending feeds relay at wss://feeds.nostrarchives.com.

- **48:44 Damus fixes favorites timeline**
  Damus merged PR #3708, rewriting subscribe_to_favorites() with filtering and deduplication updates and persisted tab selection behavior.

- **49:03 Nostur adds private zaps and custom emoji viewing**
  Nostur shipped ten commits including private zaps, custom emoji viewing, animated .webp fixes, and voice message format detection improvements.

- **49:56 Amber ships v6.0.1 through v6.0.3 with WebDAV backup and relay reconnection fixes**
  Amber v6.0.1-v6.0.3 added WebDAV and Google Drive sharing backup options, relay reconnection backoff logic, and Quartz updates to 1.08.0. Follow-up releases fixed startup relay reconnection and empty request ID intent handling.

- **53:38 Plektos v0.6.0 redesigns with Ditto themes**
  Plektos v0.6.0-v0.6.1 adds Ditto-style themes, background image uploads, and avatar shape configuration, plus review follow-ups in PR #6. The app is NIP-52 based and uses NIP-46 remote login and zap ticketing.

- **55:13 Shadow adds Nostr OS API and Cashu wallet app**
  Shadow added runtime features including a Cashu wallet app in commit 88cbda5 and a podcast player demo in commit 865c415. The runtime exposes Shadow.os.nostr and Shadow.os.audio, with Linux fixes in PR #1 and PR #2.

- **57:18 Lief fixes Amber login and adds Zapstore**
  Lief build v2026.04.12 fixes Android Amber signer login, simplifies signer nudge flow, upgrades nostrify, and adds Zapstore integration.

- **58:48 Espy overhauls color picker and fixes Amber login**
  Espy build v2026.04.12 overhauls its color picker with a curved saturation arc, fixes hue ring flicker, and reduces PNG footprint by 703KB. The same update also applies Amber signer login and Zapstore-related fixes.

- **01:00:19 Jumble adds per-feed kind filters and articles tab**
  Jumble added per-feed kind filtering, an Articles tab, notification read status sync options, avatar hide mode, and account switching race condition fixes across 13 commits.

- **01:01:05 Primal Web ships 8 version bumps**
  Primal Web shipped versions 3.0.93 through 3.0.101 with 21 commits focused on live stream chat behavior, mention boundaries, bookmark pagination, duplicate like prevention, and relay proxy fixes.

### NIP Updates

- **01:01:34 NIP-34 (Git Stuff): Add nostr:// clone URLs (PR #2312) — Merged**
  PR #2312 adds nostr:// clone URL patterns to NIP-34 for repository discovery and cloning via git-remote-nostr helpers. It defines direct, human-readable, and relay-hinted formats and tightens repository identifier handling.

- **01:03:43 NIP-63a: Minimal Payment Gateway Descriptor (PR #2315) — Open**
  PR #2315 proposes kind 10164 replaceable events for describing creator payment gateways, pricing models, and subscription rules. The goal is client interoperability without provider-specific hardcoding.

- **01:05:30 NIP-XX: Relay Self-Declaration Manifest and Retention Horizon (PR #2314) — Open**
  PR #2314 proposes kind 10100 relay manifests and a HORIZON message for explicit retention boundaries before EOSE. It aims to replace opaque empty responses with machine-readable retention limits.

- **01:08:11 NIP-TPLD: Transient Private Location Data (PR #2309) — Open**
  PR #2309 introduces kind 20411 for encrypted per-recipient geolocation sharing using NIP-44 payloads, ttl hints, and ephemeral relay handling semantics.

- **01:09:37 NIP-5C (Scrolls): WASM programs update (PR #2281) — Open**
  PR #2281 advances Scrolls conventions for publishing and discovering WebAssembly programs as Nostr events, with runtime interface refinements and browser demo alignment.

- **01:12:35 NIP-44 large payload support (PR #1907) — Open**
  PR #1907 proposes backward-compatible support for payloads beyond the 65,535-byte limit, primarily to unblock large NIP-46 remote-signing responses such as large kind 3 lists.

- **01:16:59 NIP-C7: Restrict kind 9 to chat views (PR #2310) — Open**
  PR #2310 requires clients rendering chat views to fetch only kind 9 messages, reducing context loss when mixed with kind 1 notes or kind 30023 articles.

### NIP Deep Dives

- **01:21:18 NIP Deep Dive: NIP-29 (Relay-based Groups)**
  NIP-29 defines relay-managed groups where membership and moderation are enforced by the relay, using IDs in `<host>'<group-id>` format and `h` tags on group events. It introduces moderation and config kinds, including 9000-9022 for role and membership actions and 39000-39003 for group metadata and policy publication. The model prioritizes operational simplicity over confidentiality, because the relay can read content, so it targets public and semi-public communities rather than end-to-end private chat use cases.

- **01:36:22 NIP Deep Dive: NIP-90 (Data Vending Machines)**
  NIP-90 standardizes request, result, and feedback flows for paid computation on Nostr across kind ranges 5000-5999, 6000-6999, and 7000. It defines structured job inputs, outputs, bids, parameters, payment-required statuses, and chaining semantics so multiple providers can fulfill pipeline steps. Current implementations and client support include growing DVM tooling and invoice rendering, with encrypted request options available when customers target a specific provider.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #17</title>
      <description>
Amethyst migrates to Arti Tor and ships pure Kotlin MLS and Marmot. NIP-58 badges migrate kinds. NIP-17 and NIP-46 deep dives.
</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwdekxvmrxv3hxv6nxvfdxp4x7vrx89n8saqdexyh5</link>
      <pubDate>Thu, 16 Apr 2026 18:14:33 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1776363273531-0jo0f9fxt</guid>
      <enclosure url="https://blossom.primal.net/b482d9ce23c161bc943483b243e641f42c23d82f7a0d78a7eb503b8766a85c8b.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:29:57</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/ee1e4bf3be790d0af801214581a2f025678ffee0a4dca28aeaef26086d454b33.png" />
      
      
      <content:encoded><![CDATA[### News

- **00:00 Intro**

- **00:12 Amethyst ships Arti Tor, merges pure Kotlin MLS and Marmot**
  [Amethyst](https://github.com/vitorpamplona/amethyst) shipped four releases from [v1.07.3](https://github.com/vitorpamplona/amethyst/releases/tag/v1.07.3) through [v1.08.0](https://github.com/vitorpamplona/amethyst/releases/tag/v1.08.0). The headline is v1.08.0 "Arti Tor," which migrates Tor connectivity from C bindings to [Arti](https://gitlab.torproject.org/tpo/core/arti), the Tor Project's Rust rewrite, fixing random crashes. v1.07.3 redesigned the Shorts UI with edge-to-edge feeds for pictures, shorts, and long videos, and migrated badges to kind `10008` and bookmarks to kind `10003`. On main but not yet tagged, the team merged a full Kotlin implementation of both [MLS](/en/topics/mls/) and [Marmot](/en/topics/marmot/) ([PR #2147](https://github.com/vitorpamplona/amethyst/pull/2147), [PR #2149](https://github.com/vitorpamplona/amethyst/pull/2149), [PR #2150](https://github.com/vitorpamplona/amethyst/pull/2150)), plus a pure Kotlin secp256k1 implementation ([PR #2166](https://github.com/vitorpamplona/amethyst/pull/2166)) replacing C library dependencies. Together these make [Quartz](/en/topics/quartz/) capable of running Nostr signing and Marmot group messaging without any native bindings, unlocking Kotlin Multiplatform targets including iOS.

- **10:28 Nostur v1.27.0 adds video recording and private replies**
  [Nostur](https://github.com/nostur-com/nostur-ios-public) shipped [v1.27.0](https://github.com/nostur-com/nostur-ios-public/releases/tag/v1.27.0) with in-app video recording and trim-before-upload, animated GIF and WebP support for profile and banner photos, Apple Shortcuts integration for posting from automations, private replies, and DM compatibility fixes affecting message delivery between Nostur and other clients.

- **11:33 Shosho v0.15.0 launches Shows and vertical video carousel**
  [Shosho](https://github.com/r0d8lsh0p/shosho-releases) shipped [v0.15.0](https://github.com/r0d8lsh0p/shosho-releases/releases/tag/v0.15.0) and [v0.15.1](https://github.com/r0d8lsh0p/shosho-releases/releases/tag/v0.15.1). Shows let streamers configure titles, descriptions, and products before going live and connect to OBS or any external encoder, separating stream metadata from the act of broadcasting. The release also adds a TikTok-style vertical video carousel for swiping through lives, clips, and replays, and Quick Add for publishing clips from a profile page. v0.15.1 fixes the keyboard hiding live chat input.

### Releases

- **12:55 Notedeck v0.10.0-beta ships Zapstore self-update**
  [Notedeck](https://github.com/damus-io/notedeck) shipped [v0.10.0-beta.1](https://github.com/damus-io/notedeck/releases/tag/v0.10.0-beta.1) and [v0.10.0-beta.2](https://github.com/damus-io/notedeck/releases/tag/v0.10.0-beta.2). [PR #1417](https://github.com/damus-io/notedeck/pull/1417) adds APK self-update via the Nostr/Zapstore updater on Android: the client discovers new releases through Nostr events, downloads the APK from the developer's chosen host, verifies the SHA-256 hash against the signed Nostr event, and installs it.

- **17:43 Amber v6.0.0-pre1 adds per-connection NIP-46 signing keys**
  [Amber](https://github.com/greenart7c3/Amber) shipped [v6.0.0-pre1](https://github.com/greenart7c3/Amber/releases/tag/v6.0.0-pre1). The key change is per-connection signing keys for the [NIP-46](/en/topics/nip-46/) bunker protocol: Amber now generates a distinct key per connected client, so a compromised client connection cannot impersonate the signer to other clients. [PR #377](https://github.com/greenart7c3/Amber/pull/377) adds in-app Zapstore update checking and installation. [PR #375](https://github.com/greenart7c3/Amber/pull/375) handles AndroidKeyStore failures gracefully with a warning instead of a crash. [PR #371](https://github.com/greenart7c3/Amber/pull/371) adds database cleanup with size limits to prevent unbounded storage growth.

- **24:02 Nostria ships native mobile app**
  [Nostria](https://github.com/nostria-app/nostria) released a native mobile app for Android across eight releases from [v3.1.11](https://github.com/nostria-app/nostria/releases/tag/v3.1.11) through [v3.1.18](https://github.com/nostria-app/nostria/releases/tag/v3.1.18). The key addition is native local signer support for [Amber](https://github.com/greenart7c3/Amber) and Aegis. [PR #610](https://github.com/nostria-app/nostria/pull/610) reduces feed memory pressure with adaptive runtime limits and preview URL cleanup. Desktop installers for Linux, macOS, and Windows are also available. The Android app is on [Zapstore](https://zapstore.dev/apps/app.nostria).

- **30:16 diVine 1.0.8 ships resumable uploads and DMs**
  [diVine](https://github.com/divinevideo/divine-mobile) shipped [1.0.8](https://github.com/divinevideo/divine-mobile/releases/tag/1.0.8) with 87 merged PRs. Resumable uploads let creators pick up interrupted uploads chunk by chunk instead of restarting. The release adds video quality and bitrate settings, double-tap to like, DM improvements, a macOS camera plugin ([PR #2722](https://github.com/divinevideo/divine-mobile/pull/2722)), and a BLoC-based notification system with enrichment and grouping ([PR #2820](https://github.com/divinevideo/divine-mobile/pull/2820)).

- **31:34 Manent v1.3.0 adds sensitive note blurring and NIP-42 auth**
  [Manent](https://github.com/dtonon/manent) shipped [v1.3.0](https://github.com/dtonon/manent/releases/tag/v1.3.0). Users can mark notes as sensitive to blur them in the list view. The release also adds [NIP-42](/en/topics/nip-42/) (Authentication of Clients to Relays) support, expanding the set of relays Manent can use for encrypted storage.

- **32:44 Wisp v0.17.0 through v0.17.3 add live stream zaps and wallet backup**
  [Wisp](https://github.com/barrydeen/wisp) shipped six releases from [v0.16.2-beta](https://github.com/barrydeen/wisp/releases/tag/v0.16.2-beta) through [v0.17.3-beta](https://github.com/barrydeen/wisp/releases/tag/v0.17.3-beta) with 44 merged PRs. v0.17.0 adds wallet backup safety prompts. [v0.17.1](https://github.com/barrydeen/wisp/releases/tag/v0.17.1-beta) adds live stream chat visibility across platforms and live stream zap functionality. [PR #423](https://github.com/barrydeen/wisp/pull/423) adds auto-search profiles and a zap success animation. [PR #426](https://github.com/barrydeen/wisp/pull/426) fixes an out-of-memory crash in `computeId` for events with large tag lists.

- **33:31 Mostro ships deep links, Nostr exchange rates, and a duplicate payment fix**
  [Mostro](https://github.com/MostroP2P/mostro) fixed [PR #692](https://github.com/MostroP2P/mostro/pull/692) preventing stale order writes from causing duplicate payments (a bug that could pay a seller twice for the same trade). [Mostro Mobile](https://github.com/MostroP2P/mobile) shipped [v1.2.3](https://github.com/MostroP2P/mobile/releases/tag/v1.2.3) with deep link handling across different Mostro instances, Nostr-sourced exchange rates with HTTP fallback, background detection of admin and dispute DMs ([PR #498](https://github.com/MostroP2P/mobile/pull/498)), and a relay connection blocking fix ([PR #560](https://github.com/MostroP2P/mobile/pull/560)).

- **36:55 Unfiltered v1.0.12 adds hashtags and comments**
  [Unfiltered](https://github.com/dmcarrington/unfiltered) shipped [v1.0.12](https://github.com/dmcarrington/unfiltered/releases/tag/v1.0.12) adding hashtag support ([PR #69](https://github.com/dmcarrington/unfiltered/pull/69)), the ability to write and display comments ([PR #72](https://github.com/dmcarrington/unfiltered/pull/72)), and a fix for multi-image post navigation ([PR #71](https://github.com/dmcarrington/unfiltered/pull/71)).

- **37:21 Primal Android ships wallet multi-account sharing and remote signer auto-reconnect**
  [Primal Android](https://github.com/PrimalHQ/primal-android-app) shipped with wallet multi-account sharing, an overflow menu with wallet deletion in Dev Tools, remote signer auto-reconnect on drops, and wallet service auto-reconnect. Fixes include poll zap votes no longer appearing as Top Zaps, empty poll option crash prevention, and WalletException type mapping to NWC error codes.

- **38:20 Titan v0.1.0 launches native nsite:// browser with Bitcoin name registration**
  [Titan](https://github.com/btcjt/titan) shipped [v0.1.0](https://github.com/btcjt/titan/releases/tag/v0.1.0), a native desktop browser for the Nostr web. It resolves `nsite://` URLs by looking up human-readable names registered on Bitcoin, querying Nostr relays for content events, and rendering pages fetched from [Blossom](/en/topics/blossom/) servers. No DNS, no TLS certificates, no hosting providers. Names are registered through a web interface tied to Bitcoin transactions. Ships as a macOS `.dmg` with Nix dev environment support.

- **42:52 Bikel v1.5.0 ships native foreground service for de-Googled phones**
  [Bikel](https://github.com/Mnpezz/bikel) shipped [v1.5.0](https://github.com/Mnpezz/bikel/releases/tag/v1.5.0), migrating from GMS-dependent Expo TaskManager to a custom native foreground service for reliable background ride tracking on LineageOS, GrapheneOS, and other de-Googled Android variants. The Bikel Bot gained dual-pocket architecture with autonomous eCash collection via Cashu nutzaps.

- **44:26 Sprout adds NIP-01, NIP-23, and NIP-33 support**
  [Sprout](https://github.com/block/sprout), Block's communication platform with a built-in Nostr relay, shipped [desktop/v0.1.0-rc7](https://github.com/block/sprout/releases/tag/desktop/v0.1.0-rc7) adding [NIP-23](/en/topics/nip-23/) long-form content, [NIP-33](/en/topics/nip-33/) parameterized replaceable events with `d`-tag keyed replacement, and [NIP-01](/en/topics/nip-01/)/[NIP-02](/en/topics/nip-02/) kind `1` notes and kind `3` follow lists. The release also adds an adaptive IDE theme system with 54 themes.

- **46:16 mesh-llm v0.56.0 ships distributed config protocol**
  [mesh-llm](https://github.com/michaelneale/mesh-llm) shipped [v0.56.0](https://github.com/michaelneale/mesh-llm/releases/tag/v0.56.0) with a distributed config protocol with ownership semantics, asymmetric KV cache quantization (Q8_0 keys with Q4 values) for reduced memory, OS keychain storage for identity keystores, and smooth chat streaming with message queuing. The project uses Nostr keypairs for node identity in a distributed LLM inference mesh.

- **48:03 Nostr VPN ships exit node support and Umbrel packaging**
  [Nostr VPN](https://github.com/mmalmi/nostr-vpn) shipped six releases from [v0.3.0](https://github.com/mmalmi/nostr-vpn/releases/tag/v0.3.0) through [v0.3.6](https://github.com/mmalmi/nostr-vpn/releases/tag/v0.3.6). The v0.3.x cycle adds exit node support on Windows and macOS, invite and alias propagation synced over Nostr, Umbrel packaging for self-hosted deployment, NAT punch-through using remembered public endpoints, macOS self-healing default routes, and an Android build via Tauri. The project also published a protocol specification.

- **49:49 Nymchat reverts Marmot, ships enhanced NIP-17 group chats**
  [Nymchat](https://github.com/Spl0itable/NYM) shipped 14 releases from [v3.56.261](https://github.com/Spl0itable/NYM/releases/tag/3.56.261) through [v3.58.274](https://github.com/Spl0itable/NYM/releases/tag/v3.58.274). After adding Marmot MLS group chats in v3.57, [v3.58.268](https://github.com/Spl0itable/NYM/releases/tag/v3.58.268) reverted to [NIP-17](/en/topics/nip-17/) because Marmot's multi-device support is unfinished, causing group state sync issues. v3.58.271 introduces enhanced NIP-17 group chats with rotating ephemeral keys per message to prevent timing and correlation attacks. A friend system with granular settings controls ([v3.58.262](https://github.com/Spl0itable/NYM/releases/tag/v3.58.262)) and multiple relay connectivity fixes also shipped.

- **52:28 nak v0.19.5 adds Blossom multi-server and outbox publishing**
  [nak](https://github.com/fiatjaf/nak) shipped [v0.19.5](https://github.com/fiatjaf/nak/releases/tag/v0.19.5). The `blossom` command now accepts multiple `--server` flags for uploading to several [Blossom](/en/topics/blossom/) servers in one call. A new `key` command expands partial keys by left-padding with zeroes. The `event` command gains `--outbox` for outbox-model publishing, and `fetch` exits with an error code when no event is returned.

### Project Updates

- **54:07 White Noise adds thumbhash previews and push registration bridge**
  [White Noise](https://github.com/marmot-protocol/whitenoise) merged five PRs. [PR #549](https://github.com/marmot-protocol/whitenoise/pull/549) replaces blurhash image previews with thumbhash (sharper placeholders at under 30 bytes, with blurhash as fallback). [PR #548](https://github.com/marmot-protocol/whitenoise/pull/548) adds the [MIP-05](/en/topics/mip-05/) push registration bridge connecting the push notification spec to the client. [PR #493](https://github.com/marmot-protocol/whitenoise/pull/493) adds cursor-based pagination for chat messages.

- **55:29 Route96 adds dynamic label configuration and zero-egress cleanup**
  [Route96](https://github.com/v0l/route96) merged [PR #80](https://github.com/v0l/route96/pull/80) for dynamic label model configuration via the admin API, [PR #82](https://github.com/v0l/route96/pull/82) adding label config fields to the admin UI, and [PR #79](https://github.com/v0l/route96/pull/79) adding a zero-egress file cleanup policy that automatically removes files never downloaded.

- **56:17 Snort ships security hardening and DVM payment invoices**
  [Snort](https://github.com/v0l/snort) shipped two releases with a comprehensive security audit: real Schnorr signature verification, [NIP-46](/en/topics/nip-46/) relay message forgery protection, PIN encryption improvements, and removal of unverified NIP-26 delegation trust. Performance improvements include batched WASM signature verification, lazy-loaded routes, and pre-compiled translations. [PR #618](https://github.com/v0l/snort/pull/618) adds [NIP-90](/en/topics/nip-90/) kind `7000` payment-required invoice display so DVM payment requests render as Lightning invoices in the feed.

- **57:42 Damus improves LMDB compaction**
  [Damus](https://github.com/damus-io/damus) merged [PR #3719](https://github.com/damus-io/damus/pull/3719) adding automatic LMDB compaction on a schedule, preventing the local database from growing unbounded. [PR #3663](https://github.com/damus-io/damus/pull/3663) improves the BlurOverlayView appearance.

- **01:00:28 Captain's Log adds tag indexing and note sync**
  [Captain's Log](https://github.com/nodetec/captains-log) (Comet) merged four PRs adding tag indexing and sync across notes ([PR #156](https://github.com/nodetec/captains-log/pull/156)), refactoring note sync and tag handling ([PR #157](https://github.com/nodetec/captains-log/pull/157)), and fixing trashed note sync so deleted notes stay deleted across devices ([PR #159](https://github.com/nodetec/captains-log/pull/159)).

- **01:01:11 Relatr v0.2.x redesigns plugin system with Nostr-native validator marketplace**
  [Relatr](https://github.com/ContextVM/relatr), a [Web of Trust](/en/topics/web-of-trust/) scoring engine, shipped the v0.2.x family with a complete plugin system redesign. Validators are now written in Elo, a portable functional expression language with multi-step host-orchestrated capabilities (Nostr queries, social graph lookups, NIP-05 resolution). Plugins are published as kind `765` Nostr events. A new [plugin marketplace](https://relatr.net) lets operators discover, install, and weight validators from the browser. The architecture is sandboxed: plugins can only invoke capabilities the host explicitly provides.

- **01:03:11 Shopstr improves mobile navigation and access control**
  [Shopstr](https://github.com/shopstr-eng/shopstr) pushed 158 commits across its main app and [Milk Market](https://github.com/shopstr-eng/milk-market). Fixes include mobile community layout, menu close-on-navigation, and dropdown auto-close. Protected routes now block direct URL access without authentication, and slug matching logic handles multiple exact matches correctly.

- **01:03:52 Pollerama adds notifications, movie search, and rating UI**
  [Pollerama](https://github.com/formstr-hq/nostr-polls) added thread notifications, a movie search feature, a rating UI overhaul, feed loading fixes, and dependency bumps.

- **01:04:17 Purser builds Nostr-native payment daemon with Marmot encryption**
  [Purser](https://github.com/EthnTuttle/purser), a Nostr-native payment daemon designed as a Zaprite replacement, merged nine PRs building out core architecture. The project uses [Marmot](/en/topics/marmot/) MLS via MDK for encrypted merchant-customer messaging with Strike and Square as payment providers. This week landed config and catalog loading, message schema validation, the MDK communication layer, Strike and Square provider implementations, a polling engine, anti-spam rate limiting, and the order processing pipeline. All 99 tests now exercise real mdk-core MLS operations.

- **01:05:48 Vector refactors DM attachments and adds profile editing**
  [Vector](https://github.com/VectorPrivacy/Vector) merged [PR #55](https://github.com/VectorPrivacy/Vector/pull/55) moving DM attachment decryption and saving to the vector-core library, adding profile editing support, and properly wiring the upload cancel flag through TauriSendCallback.

### NIP Updates

- **01:06:26 NIP-58 (Badges): Profile Badges move to kind 10008, Badge Sets to kind 30008 ([PR #2276](https://github.com/nostr-protocol/nips/pull/2276)) — Merged**
  [NIP-58](/en/topics/nip-58/) defines badge awards and profile badge display on Nostr. Previously, Profile Badges (the list a user displays) used kind `30008`, the same kind as Badge definitions (parameterized replaceable events keyed by a `d` tag). This created ambiguity. The merged PR migrates Profile Badges to kind `10008`, a simple replaceable event with one per pubkey and no `d` tag needed, while kind `30008` is repurposed for Badge Sets (curated collections of badge definitions). Clients now query a single replaceable event per user for their displayed badges rather than scanning parameterized replaceable events. Amethyst v1.07.3 already ships this migration.

- **01:07:35 NIP-34 (Git Stuff): Add git-related follow lists ([PR #2130](https://github.com/nostr-protocol/nips/pull/2130)) — Merged**
  [NIP-34](/en/topics/nip-34/) defines how to host git repositories on Nostr using kind `30617` repository announcements. This merged PR adds follow list conventions for repository and issue tracking: users publish kind `30000` follow sets with `d` tags like `git-repos` or `git-issues` containing `a` tag references to repositories they want to track. Clients can subscribe to these follow sets to show repository activity in a user's feed, working the same way kind `3` contact lists work for pubkeys. This closes a gap where there was no Nostr-native way to follow repository activity without subscribing to a specific relay.

- **01:08:22 NIP-AC: P2P Voice and Video Calls over WebRTC ([PR #2301](https://github.com/nostr-protocol/nips/pull/2301)) — Open**
  [NIP-AC](/en/topics/nip-ac/) expands the original NIP-100 (already implemented by 0xChat) with three changes: migration to [NIP-44](/en/topics/nip-44/) encryption wrapped in [NIP-59](/en/topics/nip-59/) gift wraps to eliminate metadata leaks, a specified WebRTC workflow for call setup (offer, answer, ICE candidates), and a mesh group call model where each peer establishes a direct WebRTC connection to every other peer. The new spec is not backwards-compatible with NIP-100. Amethyst is actively building against it, with a call state machine test suite ([PR #2143](https://github.com/vitorpamplona/amethyst/pull/2143)) and stale call offer handling ([PR #2164](https://github.com/vitorpamplona/amethyst/pull/2164)) already merged this week.

- **01:09:38 NIP-340 (FROST Quorum) ([PR #2299](https://github.com/nostr-protocol/nips/pull/2299)) — Open**
  [NIP-340](/en/topics/nip-340/) proposes conventions for [FROST](/en/topics/frost/) (Flexible Round-Optimized Schnorr Threshold) signing on Nostr. FROST lets a group of signers collectively control a Nostr identity where any t-of-n members can sign events without reconstructing the full private key. Signing rounds are coordinated, key shares are distributed, and threshold-signed events are published using the conventions defined in the NIP. This builds on the Igloo iOS signer work from the [FROSTR project](/en/newsletters/2026-04-01-newsletter/#igloo-signer-11) and addresses custody and security use cases where no single device should hold a complete key.

- **01:10:41 NIP-5D (Nostr Web Applets) ([PR #2303](https://github.com/nostr-protocol/nips/pull/2303)) — Open**
  [NIP-5D](/en/topics/nip-5d/) defines a `postMessage` protocol for sandboxed web applications ("napplets") running in iframes to communicate with a hosting application ("shell"). The shell provides the napplet with Nostr signing, relay access, and user context through a structured message API, while the iframe sandbox prevents direct key access. This extends the static website hosting model from [NIP-5A](/en/topics/nip-5a/) toward interactive applications that can read and write Nostr events: where NIP-5A serves a page, NIP-5D runs a program. A working runtime implementation accompanies the proposal.

- **01:12:08 NIP-5C (Scrolls) ([PR #2281](https://github.com/nostr-protocol/nips/pull/2281)) — Open**
  [NIP-5C](/en/topics/nip-5c/) (renamed from the earlier NIP-A5 proposal) defines conventions for publishing and discovering WebAssembly programs on Nostr. WASM binaries are stored as Nostr events on relays, and clients can download and execute them in a sandboxed runtime. Scrolls are self-contained programs that turn Nostr into a distribution network for executable code. A [demo app](https://nprogram.netlify.app/) shows scrolls running in-browser, with example programs published as Nostr events that any client can fetch and execute. The concept extends NIP-5A from serving HTML to running interactive programs across the same relay infrastructure.

- **01:13:14 NIP-85 (Trusted Assertions): Clarifications ([PR #2304](https://github.com/nostr-protocol/nips/pull/2304)) — Open**
  [NIP-85](/en/topics/nip-85/) defines a model for trusted assertions where service providers attest to facts about users. This PR tightens the specification language around multiple keys and relays per service provider, clarifying how clients should handle assertions from providers that operate across several pubkeys or relay endpoints. The changes address ambiguity in the current spec that leads to inconsistent client implementations.

- **01:13:42 NIP-24 (Extra Metadata Fields): published_at for replaceable events ([PR #2300](https://github.com/nostr-protocol/nips/pull/2300)) — Open**
  [NIP-24](/en/topics/nip-24/) defines extra metadata fields for Nostr events. This PR generalizes the `published_at` tag from [NIP-23](/en/topics/nip-23/) long-form content to all replaceable and addressable events. The tag is display-only: if `published_at` equals `created_at`, the event was created at that time; if they differ (because the event was updated), clients can show both a creation and an update timestamp. This lets kind `0` profiles display "joined at" dates and all replaceable events preserve their original publication timestamp across updates. A companion [NIP-51](/en/topics/nip-51/) proposal ([PR #2302](https://github.com/nostr-protocol/nips/pull/2302)) adds the same tag to list events.

- **01:15:47 NIP-59 (Gift Wrap): Ephemeral gift wrap kind ([PR #2245](https://github.com/nostr-protocol/nips/pull/2245)) — Open**
  [NIP-59](/en/topics/nip-59/) defines the gift wrap protocol used by [NIP-17](/en/topics/nip-17/) private DMs and other metadata-protecting applications. The existing kind `1059` gift wrap is a regular event that relays are expected to store. This PR adds kind `21059` as an ephemeral counterpart: relays are not expected to store ephemeral events and may discard them after delivery. This lets applications send gift-wrapped messages that disappear from relays once delivered, reducing storage requirements for high-volume or transient messaging while keeping the same three-layer encryption model as regular NIP-17 DMs.

- **01:16:35 OpenSats announces sixteenth wave of Nostr grants**
  [OpenSats](https://opensats.org) announced its [sixteenth wave of Nostr grants](https://opensats.org/blog/sixteenth-wave-of-nostr-grants) on April 8 with four first-time grants and one renewal. [Amethyst Desktop](https://github.com/vitorpamplona/amethyst/tree/main/desktopApp) receives funding for contributor Robert Nagy to build a standalone desktop app on the [Quartz](/en/topics/quartz/) and Commons modules. [Nostr Mail](https://github.com/nogringo/nostr-mail) receives funding to build an email system using kind `1301` events in [NIP-59](/en/topics/nip-59/) gift wraps with an SMTP bridge. [Nostrord](https://github.com/Nostrord/nostrord) receives funding for a Kotlin Multiplatform [NIP-29](/en/topics/nip-29/) client with Discord-style moderation. [Nurunuru](https://github.com/tami1A84/null--nostr) receives funding for a native iOS Japanese-focused client with passkey biometric login. HAMSTR receives a renewal grant.

### NIP Deep Dives

- **01:17:48 NIP Deep Dive: NIP-17 (Private Direct Messages)**
  [NIP-17](https://github.com/nostr-protocol/nips/blob/master/17.md) replaces [NIP-04](/en/topics/nip-04/) as the standard for private DMs on Nostr, using [NIP-44](/en/topics/nip-44/) encryption with [NIP-59](/en/topics/nip-59/) gift wrap in a three-layer system. The innermost layer is an unsigned kind `14` message (the "rumor") providing limited deniability. The kind `13` seal is signed by the real sender and NIP-44-encrypted to the recipient, with no tags to avoid revealing the recipient if decrypted alone. The outermost kind `1059` gift wrap is signed by a random throwaway key with a randomized timestamp up to two days in the past, so relays see only an anonymous event addressed to the recipient. NIP-17 does not provide forward secrecy: all messages use the static Nostr keypair, so a compromised nsec decrypts all past and future messages. Kind `10050` events publish a user's preferred DM relay list for delivery routing. Implementations include Amethyst, Primal, Nostur, Damus, noStrudel, Coracle, Flotilla, and nospeak.

- **01:26:23 NIP Deep Dive: NIP-46 (Nostr Remote Signing)**
  [NIP-46](https://github.com/nostr-protocol/nips/blob/master/46.md) separates the private key from the client application. The user runs a remote signer ("bunker") that holds the key and responds to signing requests over Nostr relays using kind `24133` events encrypted with [NIP-44](/en/topics/nip-44/). A client generates a disposable session keypair and sends JSON-RPC-like requests: `connect`, `sign_event`, `get_public_key`, `ping`, `nip04_encrypt`, `nip04_decrypt`, `nip44_encrypt`, `nip44_decrypt`, and `switch_relays`. Clients request specific capabilities at connection time through a permission string (`sign_event:1,nip44_encrypt`). Connections are initiated by either side: `bunker://` URLs from signers, `nostrconnect://` URLs from clients, with a `secret` parameter preventing spoofing. Amber v6.0.0-pre1 adds per-connection signing keys so each client gets an isolated key. [nsec.app](https://github.com/nicktee/nsecapp) provides a web-based bunker. Auth challenges via `auth_url` handle cases where the signer needs a password, biometric, or hardware token before approving a request.
]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #16</title>
      <description>Amethyst ships NIP-62 Request to Vanish and relay management, NIP-5A merges for static websites on Nostr, and Marmot adoption widens.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwde4xvmnydf3xcunsded095hq7ngvaenxusjnh9wl</link>
      <pubDate>Sun, 05 Apr 2026 07:01:56 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1775372516987-yipzhgs3r</guid>
      <enclosure url="https://blossom.primal.net/b4d5028dd53ca10f4ca75ac2fafd47fdeaf253b92657b3aef1f4a34975fbb990.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:04:39</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/85d36c609918fd36318175ccbd3749ed0f458dc245a6d80ce85f94a8ff6b9711.png" />
      
      
      <content:encoded><![CDATA[### News

- **00:00 Amethyst ships pinned notes, relay management, and Request to Vanish**
  Amethyst shipped six releases from v1.07.0 through v1.07.5 in three days. The headline features span pinned notes, a polls feed, [NIP-62](/en/topics/nip-62/) Request to Vanish for requesting full event deletion from relays, [NIP-86](/en/topics/nip-86/) relay management API directly from the client, [NIP-66](/en/topics/nip-66/) relay liveness in the info screen, and [NIP-43](/en/topics/nip-43/) member info display. v1.07.2 added GIF keyboard uploads and fixed an Amber signing regression, and v1.07.5 fixes an image uploading crash.

- **01:44 NIP-5A merges, bringing static websites to Nostr**
  [NIP-5A](https://github.com/nostr-protocol/nips/blob/master/5A.md) merged via [PR #1538](https://github.com/nostr-protocol/nips/pull/1538), defining kind `15128` for root sites and kind `35128` for named sites. Each manifest maps URL paths to SHA256 hashes, with `server` tags pointing to [Blossom](/en/topics/blossom/) storage hosts. A host server resolves the author's pubkey from the subdomain, fetches the manifest from the author's relay list, and serves files by downloading matching blobs. Existing implementations include [nsite](https://github.com/lez/nsite) and [nsite-manager](https://github.com/hzrd149/nsite-manager).

- **09:16 White Noise fixes relay churn and expands client controls**
  White Noise shipped [v2026.3.23](https://github.com/marmot-protocol/whitenoise/releases/tag/v2026.3.23) with quorum-based relay-list publishing, scoped ephemeral relay sessions, NIP-C7 reply threading, deleted message placeholders, in-app bug reports via [NIP-44](/en/topics/nip-44/) anonymous reports, chat archiving, mute with configurable durations, notification settings, and preparatory push-registration work for iOS and Android.

- **11:33 Nostr VPN reaches v0.3.0 with roster sync and invite v2**
  [nostr-vpn](https://github.com/mmalmi/nostr-vpn) shipped through [v0.3.3](https://github.com/mmalmi/nostr-vpn/releases/tag/v0.3.3) with two breaking changes: invite format v2 and admin-signed roster sync. An admin node can now push membership changes to all peers without manual per-peer configuration updates.

- **13:22 nospeak launches as a 1.0 private messenger**
  [nospeak](https://github.com/psic4t/nospeak) shipped [1.0.0](https://github.com/psic4t/nospeak/releases/tag/v1.0.0) with [NIP-17](/en/topics/nip-17/) one-on-one chats using [NIP-59](/en/topics/nip-59/) gift wrap and [NIP-44](/en/topics/nip-44/) encryption, AES-256-GCM media encryption before upload to Blossom, and a self-hostable container deployment.

- **13:49 Flotilla v1.7.0 adds voice rooms and email login**
  [Flotilla](https://gitea.coracle.social/coracle/flotilla) shipped [v1.7.0](https://gitea.coracle.social/coracle/flotilla/src/tag/1.7.0) and [v1.7.1](https://gitea.coracle.social/coracle/flotilla/src/tag/1.7.1) with voice rooms contributed by mplorentz, email/password login, proof-of-work DMs, DM editing, Blossom support detection, Android push notification fallback, and redesigned relay onboarding. The voice room join dialog solves a UX problem where entering a voice-enabled room previously forced microphone activation.

- **19:02 Caravel**
  [Caravel](https://gitea.coracle.social/coracle/caravel), hodlbod's new hosting manager and dashboard for zooid relays, logged 40 commits this week in initial development.

- **20:15 Nymchat ships Marmot-powered group chats**
  [Nymchat](https://github.com/Spl0itable/NYM) announced all new group chats now use the [Marmot](/en/topics/marmot/) protocol for MLS-encrypted messaging with [NIP-17](/en/topics/nip-17/) fallback. The v3.55 and v3.56 series fixed group chat edge cases, patched an XSS vulnerability, and added keyword/phrase blocking. This makes Nymchat another Marmot client joining White Noise and OpenChat.

### Releases

- **21:28 Calendar by Form* v1.0.0**
  [Calendar by Form*](https://github.com/formstr-hq/nostr-calendar) reached [v1.0.0](https://github.com/formstr-hq/nostr-calendar/releases/tag/v1.0.0) with private calendar lists using encrypted kind `32123` events with [NIP-44](/en/topics/nip-44/) self-encryption, ICS intent handling, and invitation requests.

- **22:08 Amber v5.0.2 through v5.0.4**
  [Amber](https://github.com/greenart7c3/Amber) shipped three point releases adding mnemonic recovery phrase login, a [NIP-42](/en/topics/nip-42/) relay auth whitelist, and encryption scope selection for decrypt permissions. v5.0.4 fixes scoped permission handling and improves bunker request performance.

- **24:24 Aegis v0.4.0**
  [Aegis](https://github.com/ZharlieW/Aegis) shipped [v0.4.0](https://github.com/ZharlieW/Aegis/releases/tag/v0.4.0) with Full and Selective authorization modes, QR-scanning fixes, batch select controls, and per-permission usage statistics.

- **24:45 Schemata v0.2.7 through v0.3.0**
  [Schemata](https://github.com/nostrability/schemata) shipped four releases with 21 merged PRs. v0.3.0 brings pattern consistency fixes across relay URLs, hex IDs, MIME types, and BOLT-11 strings, NIP-19 bech32 base type schemas, and kind 777 spell event validation. The release pipeline now publishes a kind `1` note on each release. Schemata now supports 12+ languages beyond JS/TS.

- **26:52 BigBrotr v6.5.0 through v6.5.4**
  [BigBrotr](https://github.com/BigBrotr/bigbrotr) shipped five releases with centralized relay URL validation, geohash location tags for announcement events, [NIP-66](/en/topics/nip-66/) timeout protection, and a PostgreSQL 16 to 18 upgrade.

- **30:09 Vertex Lab relay adds NIP-50 profile search**
  [Vertex Lab](https://vertexlab.io) announced `wss://relay.vertexlab.io` now supports [NIP-50](/en/topics/nip-50/) profile search, combining full-text user discovery with existing Web of Trust data.

- **30:50 Hashtree v0.2.17 and v0.2.18 ship WebRTC mesh and Iris Desktop**
  [Hashtree](https://github.com/mmalmi/hashtree) shipped two releases adding WebRTC peer-to-peer blob distribution, Windows build artifacts, and Iris Desktop 0.1.0 bundled as AppImage, .deb, and Windows installer.

- **32:01 Nostr Mail Client v0.7.0 through v0.7.2**
  [Nostr Mail Client](https://github.com/nogringo/nostr-mail-client) shipped three releases with onboarding, profile editing, and fresh Android and Linux builds.

- **32:30 Wisp v0.14.0 through v0.16.1**
  [Wisp](https://github.com/barrydeen/wisp) shipped 13 releases with NIP-17 rumor JSON fixes, repost badges, expandable reaction details, persistent emoji sets, and video autoplay controls.

- **33:49 Primal Android 3.0.17**
  [Primal Android](https://github.com/PrimalHQ/primal-android-app) shipped [3.0.17](https://github.com/PrimalHQ/primal-android-app/releases/tag/3.0.17) with [NIP-47](/en/topics/nip-47/) structured error codes, a poll zap vote fix, and wallet balance visibility fix.

- **34:19 OpenChat v0.2.4 through v0.3.0**
  [OpenChat](https://github.com/DavidGershony/openChat) shipped six releases adding [NIP-42](/en/topics/nip-42/) relay auth, voice message controls (pause, resume, seek), Amber connection fixes, AES-256-GCM secure storage on Linux/macOS, and [NIP-65](/en/topics/nip-65/) relay discovery with local metadata caching.

- **35:14 Igloo Signer 1.1**
  [Igloo](https://github.com/FROSTR-ORG/igloo-ios-prototype) shipped [v1.1](https://github.com/FROSTR-ORG/igloo-ios-prototype/releases/tag/v1.1), the iOS [FROST](/en/topics/frost/) threshold signer from the FROSTR project. FROST signatures let a group of signers collectively control a Nostr keypair where any t-of-n participants can sign without any single party holding the full key.

- **36:23 nak v0.19.3 and v0.19.4**
  [nak](https://github.com/fiatjaf/nak) shipped two releases fixing panic conditions in string splitting and curl flag parsing.

- **36:34 Flora v0.3.0**
  [Flora](https://github.com/shawnyeager/flora-extension) shipped [v0.3.0](https://github.com/shawnyeager/flora-extension/releases/tag/v0.3.0) adding private encrypted video sharing with AES-256-GCM via [NIP-17](/en/topics/nip-17/).

- **37:04 YakiHonne Mobile 2.0.3**
  [YakiHonne](https://github.com/YakiHonne/mobile-app) shipped [2.0.3](https://github.com/YakiHonne/mobile-app/releases/tag/YakiHonne-2.0.3) with relay reviews, nested replies, auto-translation, and NWC multi-relay support.

### Project Updates

- **37:31 Zap Cooking adds zap polls and Branta payment verification**
  [Zap Cooking](https://github.com/zapcooking/frontend) merged 11 PRs adding zap polls (kind 6969) and [Branta](https://branta.pro/) payment destination verification with camera-based QR scanning.

- **38:13 diVine lays groundwork for unified search and hardens video delivery**
  [diVine](https://github.com/divinevideo/divine-mobile) added a unified search screen foundation, shared pagination controller, video delivery retry with fallback to raw blobs, and resumable upload recovery.

- **38:39 Shopstr adds custom storefronts and Milk Market keeps shipping marketplace work**
  [Shopstr](https://github.com/shopstr-eng/shopstr) added custom storefronts. [Milk Market](https://github.com/shopstr-eng/milk-market) continued with storefront optimizations, account recovery, and beef splits.

- **41:21 Notedeck adds sound effects and extends its updater path toward Android**
  [Notedeck](https://github.com/damus-io/notedeck) added a sound effects subsystem and Agentium CLI updates. An open PR proposes APK self-update via Nostr/Zapstore on Android.

- **41:53 Nostria adds repost relay hints and NIP-98 alignment**
  [Nostria](https://github.com/nostria-app/nostria) added [NIP-18](/en/topics/nip-18/) repost relay hints, aligned HTTP auth with [NIP-98](/en/topics/nip-98/), and added Schemata validation tests.

- **43:20 Nostr-Doc adds desktop packaging and offline-first work**
  [Nostr-Doc](https://github.com/formstr-hq/nostr-docs) added desktop app packaging, native app work, offline-first behavior, and Ctrl+S save.

- **43:59 rust-nostr optimizes NIP-21 parsing and adds relay-side NIP-62 support**
  [rust-nostr](https://github.com/rust-nostr/nostr) optimized NIP-21 URI parsing and has four open PRs adding [NIP-62](/en/topics/nip-62/) support across memory, LMDB, SQLite, and database test backends.

- **44:20 nostr-tools adds bunker relay control and fixes NIP-47 multi-relay parsing**
  [nostr-tools](https://github.com/nbd-wtf/nostr-tools) added `skipSwitchRelays` for manual bunker relay management and fixed [NIP-47](/en/topics/nip-47/) connection string parsing for multiple relays.

- **44:36 Nostrability integrates Sherlock audit data and publishes Schemata overview**
  [Nostrability](https://github.com/nostrability/nostrability) merged 14 PRs integrating Sherlock scan statistics into the dashboard with per-client schema fail rates. elsat published a Schemata overview covering 179 event kind schemas across 65 NIPs.

- **46:04 Nalgorithm adds digest generation and local score caching**
  [Nalgorithm](https://github.com/jooray/nalgorithm) started public development with a relevance-ranked feed, CLI digest tool for spoken-word summaries, and file-based score caching with incremental preference learning.

- **46:54 TENEX adds RAG vector store and targeted MCP startup**
  [TENEX](https://github.com/tenex-chat/tenex) added a pluggable vector store (SQLite-vec, LanceDB, Qdrant), targeted MCP startup, and a proactive `send_message` tool for Telegram-bound agents.

- **48:21 Dart NDK moves Amber signer and adds Alby Go 1-click**
  [Dart NDK](https://github.com/relaystr/ndk) moved Amber signer support into ndk_flutter and added Alby Go one-click wallet connection.

- **48:44 Marmot moves KeyPackages to addressable events and tightens push notifications**
  The [Marmot spec](https://github.com/marmot-protocol/marmot) migrated KeyPackage events from regular `kind:443` to addressable `kind:30443`, allowed non-admin SelfRemove, required admins to relinquish status before departure, and tightened MIP-05 push notification wire format.

### NIP Updates

- **50:48 NIP-5A: Static Websites (PR #1538)**
  Merged. Kind `15128` and `35128` manifest events for hosting static websites under Nostr keypairs using Blossom storage.

- **51:10 NIP-30: Custom Emoji**
  Merged via [PR #2297](https://github.com/nostr-protocol/nips/pull/2297). Allows hyphens in shortcodes, documenting existing usage.

- **51:33 NIP-C1: Agent TUI Messages (PR #2295)**
  Proposes structured message format for agents to send interactive UI elements (text, buttons, card, table) through encrypted DMs using existing [NIP-17](/en/topics/nip-17/) and [NIP-04](/en/topics/nip-04/) content as JSON.

- **51:58 NIP-95: Hybrid Peer-to-Peer Relay Protocol (PR #2293)**
  Proposes relays coordinating peer-to-peer event distribution over WebRTC, with stable clients as Super Peers and the relay as seed node and fallback.

- **52:27 NIP-B9: Zap Poll Events (PR #2284)**
  Reopens zap-poll idea with kind `6969` poll definitions and kind `9734` zaps as votes for economic Sybil resistance, complementing free NIP-88 polls.

- **52:49 NIP-AD: Super Zap (PR #2289)**
  Proposes zaps to relay/client pubkeys displayed as promotional notes, turning zap receipts into an ad surface with minimum-sats spam thresholds.

- **53:16 NIP-XX: Agent Reputation Attestations (PR #2285)**
  Proposes kind `30085` for structured reputation attestations with temporal decay, negative ratings with evidence, and graph-diversity Sybil resistance.

- **53:55 NIP-XX: Paid API Service Announcements (PR #2291)**
  Proposes kind `31402` for advertising paid HTTP APIs with tags-first filtering and optional request/response schemas.

- **54:25 NIP-XX: Key Derivation from LNURL-auth via SplitSig (PR #2294)**
  Proposes deriving a Nostr keypair from an LNURL-auth ECDSA signature combined with a client-side nonce, using the Lightning wallet as recovery anchor.

- **55:25 NIP-55: Document rejected field (PR #2290)**
  Documents the `rejected` field for intent-based signer responses, formalizing the behavior Amethyst's v1.07.x fix had to work around.

### NIP Deep Dives

- **55:46 NIP Deep Dive: NIP-5A (Static Websites)**
  [NIP-5A](https://github.com/nostr-protocol/nips/blob/master/5A.md) defines how kind `15128`/`35128` manifests map paths to SHA256 hashes, the three-part serving flow (host server, Blossom storage, author's signed manifest), DNS subdomain format with base36 encoding limited to 13-character `d` tags, and why any component (author, Blossom server, host server) is independently replaceable.

- **1:00:12 NIP Deep Dive: NIP-62 (Request to Vanish)**
  [NIP-62](https://github.com/nostr-protocol/nips/blob/master/62.md) defines kind `62` for requesting full event deletion. Targeted requests use specific `relay` tags, global requests use `ALL_RELAYS`. Goes beyond NIP-09 in scope (everything vs. individual events) and strength (MUST comply vs. MAY comply). Includes gift wrap cleanup and sticky deletion preventing re-broadcast. Amethyst ships client-side support while rust-nostr has relay-side PRs open in the same week. The design resolves the censorship-resistance tension by limiting the request to self-directed deletion.
]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #15</title>
      <description>Primal shipped Follow Packs and deep links, BigBrotr turned leaked nsecs into a network-wide warning system, nostr-vpn and P2P DOOM pushed Nostr beyond social use cases, and the episode closed with a six-year March retrospective.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwde58yurvdfhxymnzwpdvdh8seejx33hy6cx7jpaf</link>
      <pubDate>Tue, 31 Mar 2026 19:49:31 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1774986571718-cnxg24crk</guid>
      <enclosure url="https://blossom.primal.net/f7556db630e4ac275a92ae3626056db317c505f0259b32ca5145c172c35bbde4.mp3" type="audio/mpeg" length="0" />
      
      <itunes:duration>58:07</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/fc613561449a16e08122b22e8bcbb2f80972ebf64e876414b785efb4a5ec1669.png" />
      
      
      <content:encoded><![CDATA[Pip, Abh3po, Pete and Max join Nostr Compass Podcast #15 to walk through the biggest stories from [Newsletter #15](https://nostrcompass.org/en/newsletters/2026-03-25-newsletter/), from Primal's new Follow Packs and BigBrotr's relay-scale nsec leak analysis to nostr-vpn, peer-to-peer DOOM, and a dense week of client and protocol releases.

The second half of the episode moves from weekly updates into a longer retrospective, tracing what happened in Nostr each March from 2021 through 2026. That arc runs from fiatjaf making two protocol commits in March 2021 to a March 2026 ecosystem where VPNs, games, signers, CI pipelines, and agent proposals all coexist on the same event-and-relay model.

## Full Show Notes

### News

- **00:00 Intro**
  Opening setup for the week, the guests, and the main themes from Newsletter #15.

- **00:16 Primal adds Follow Packs, zap enrichment, and deep links**
  Primal Android follows last week's 3.0 wallet work with Follow Packs for onboarding, zap enrichment for wallet context, and a `primalconnect://` deep-link protocol for cross-app navigation. The discussion also touches the parallel TestFlight work landing on iOS.

- **03:18 BigBrotr maps exposed private keys across the relay network**
  BigBrotr scans 41 million events across 1,085 relays looking for exposed nsec strings, then separates bot noise from real user exposure. The segment covers the NIP-90 leak checker, npub.world profile warnings, and why the result is both a security story and a Nostr-native service story.

- **09:03 Nostr VPN launches as a Tailscale alternative**
  Martti Malmi's nostr-vpn uses Nostr relays for signaling and WireGuard for encrypted tunnels, replacing centralized account-based coordination with Nostr keypairs. The conversation covers its rapid release cadence, LAN pairing, Windows support, and the broader idea of Nostr as infrastructure rather than only social media.

- **11:14 Open-source DOOM runs peer-to-peer over Nostr**
  Vector's P2P DOOM uses Nostr for discovery, Marmot for encryption, and Iroh for low-latency QUIC transport. This chapter digs into why the stack matters: Nostr coordinates the session, but the actual gameplay moves onto a transport layer built for real-time performance.

- **12:42 FIPS v0.2.0 ships Tor transport, reproducible builds, and sidecar examples**
  FIPS v0.2.0 adds Tor transport for anonymized mesh links, reproducible builds, a sidecar example that connects through a Nostr relay, and OpenWrt workflow improvements. The wire format changes, so the hosts also note that v0.1.0 nodes do not interoperate with v0.2.0 without upgrading.

- **14:29 Nostrability Schemata goes multilingual**
  Nostrability expands from JavaScript-only packages into Rust, Go, Dart, Swift, and Python, while the interop tracker adds a What's New feed and better filtering. The broader point is that event kind validation is becoming a reusable cross-language building block instead of copy-pasted app logic.

### Releases

- **15:11 Amethyst v1.06.0 and v1.06.1**
  Poll support lands with weighted voting based on [NIP-85](/en/topics/nip-85/) (Trusted Assertions), plus redesigned poll cards. The follow-up point release fixes concurrent modification crashes introduced along that new path.

- **16:30 Amber v5.0.0 and v5.0.1**
  Amber promotes its recent relay-auth, Tor, permission-scoping, and encrypted PIN work into stable, then removes internet permission from the offline build flavor in v5.0.1. The hosts frame this as signer hardening reaching production maturity.

- **17:13 Mostro v0.17.0 and Mostro Mobile v1.2.2**
  Mostro continues building out buyer and seller reputation data as Nostr events, while Mostro Mobile stays aligned with the latest protocol changes on the client side.

- **17:39 Shosho v0.14.0**
  Shosho Shop adds storefront surfaces to profiles, browse flows, and live streams. The open question is whether the implementation maps onto [NIP-99](/en/topics/nip-99/) listings or a separate event model.

- **18:13 Applesauce v5.2.0**
  Applesauce ships fixes and new helper APIs across six packages, including `AndroidNativeSigner`, [NIP-42](/en/topics/nip-42/) auth challenge tracking, duplicate event reference helpers, and Blossom server resolution. Because it sits under multiple web clients, the impact reaches well beyond one app.

- **19:15 Wisp ships 16 releases in one week**
  Wisp's release sprint adds multi-account support, zen notifications, drafts, scheduled posts, safety filters, and other UX improvements. The hosts use the run to talk about what raw release count does and does not tell you about a project's momentum.

- **21:03 Manent v1.2.0**
  Manent adds camera capture, image resizing before upload, and pinch-to-zoom for reviewing encrypted notes and files stored across relays.

- **21:37 diVine 1.0.7**
  diVine adds a playback watchdog that auto-resumes stalled videos, targeting the remaining failure path after its earlier test infrastructure and direct MP4 work.

- **21:46 Alby Extension v3.14.2**
  The Alby browser extension adds Lightning address QR display and Schnorr signing support, tightening its alignment with Nostr's native signature scheme.

- **21:55 NoorNote v0.6.5 through v0.6.11**
  NoorNote introduces Follow Packs, NDK v3 migration, picture notes, and a cleaner relay connection flow over seven rapid releases.

- **22:31 nak v0.19.1 and v0.19.2**
  nak continues its steady CLI iteration after last week's group-forum UI addition, reinforcing its role as the Swiss army knife for relay queries, signing, and encoding work.

- **22:45 Calendar by Form* v0.2.1**
  Calendar fixes a notification template problem affecting reminders and offers another concrete example of [NIP-52](/en/topics/nip-52/) calendar events as reusable protocol primitives.

- **25:45 NYM v3.50 through v3.53**
  NYM adds Nymbot, relay management features, and a hardcore mode that rotates to a fresh keypair for every message. The tradeoff between anonymity and persistent identity becomes the center of this segment.

### Project Updates

- **26:29 Ditto adds Bluesky bridge and Wikipedia integration**
  Ditto pushes beyond Nostr-only consumption by rendering Bluesky threads inline through [NIP-73](/en/topics/nip-73/) external content IDs and by turning Wikipedia into a first-class content source. The app starts to look more like a multi-protocol aggregator than a single-network client.

- **27:12 Pika builds a NIP-34 forge CI pipeline**
  Pika's self-hosted forge receives patches as [NIP-34](/en/topics/nip-34/) git events, runs lane-based CI, and reports status back through Nostr events. The hosts treat this as one of the clearest examples yet of Nostr-native development workflows moving past basic patch exchange.

- **27:51 Nostria adds communities, code snippets, and voice event handling**
  Nostria expands into [NIP-72](/en/topics/nip-72/) communities, syntax-highlighted code snippets, voice replies, DM payment flows, better media handling, and more. This segment is about the app surface area that modern clients are expected to cover.

- **28:54 Comet automated builds**
  Comet ships over 40 automated alpha builds in a week, showing constant active development even if the raw build count overstates user-visible feature velocity.

### NIP Updates

- **29:35 NIP-AA: Autonomous Agents on Nostr (PR #2259)**
  A proposal for how autonomous agents identify themselves, discover services, and coordinate over Nostr. The conversation frames it as part of the broader shift from user apps to agent-capable infrastructure.

- **29:52 NIP-50 (Search): Sort extensions (PR #2283)**
  Search relays may gain top, hot, zaps, and new sort modes, moving more result ranking into relay-supported search instead of client-only sorting.

- **34:00 NIP-A5: WASM Programs (PR #2281)**
  A proposal for publishing and discovering WebAssembly programs over Nostr, raising questions about executable distribution, trust, and portable app surfaces.

- **35:16 NIP-CF: Combine Forces interoperable napps (PR #2277)**
  Interoperable napps aim to let different clients and services compose around shared conventions rather than isolated product silos.

- **38:03 Snapshots NIP (PR #2279)**
  A relay snapshot proposal for synchronization and backup.

- **38:24 Checkpoints NIP (PR #2278)**
  A companion proposal for known-good relay state markers.

- **38:45 NIP-58 (Badges): Badge Sets refactor (PR #2276)**
  Badge collections may be reorganized to make issuer and badge-set relationships cleaner and easier to reference.

- **40:12 NIP-11 (Relay Information Document): Extensions (PR #2280)**
  Additional relay metadata fields would make [NIP-11](/en/topics/nip-11/) more useful for machine-readable discovery and feature negotiation.

### Five Years of Nostr Marches

- **40:30 Five Years of Nostr Marches**
  The episode shifts from weekly reporting into a historical retrospective across six March snapshots.

- **40:44 March 2021: Two Commits**
  Four months into Nostr's existence, March 2021 produced just two protocol commits, one of which merely added `kind` to filter definitions. The scale contrast with 2026 sets the frame for the whole retrospective.

- **41:35 March 2022: Pre-Damus Building**
  The protocol repo was quiet, but client tooling kept moving. Branle and more-speech represent the small builder culture that existed before the Damus App Store breakout.

- **42:52 March 2023: Post-Explosion Infrastructure**
  Nostr absorbs its growth wave with 28 merged NIP PRs, the birth of NDK, and the creation of NWC. This segment focuses on the libraries and protocols that made the next phase of app development possible.

- **45:55 March 2024: Protocol Maturation**
  [NIP-34](/en/topics/nip-34/) dominates the month, with debates over decentralized git collaboration showing how far the protocol had moved beyond simple social posting.

- **48:03 March 2025: Infrastructure Expansion**
  [NIP-66](/en/topics/nip-66/) finally merges after a long gestation, while MCP servers, code snippets, and new grants show the ecosystem broadening its technical surface area.

- **55:15 March 2026: Convergence**
  The retrospective lands in the present: VPNs, games, signers, CI pipelines, release distribution, commerce surfaces, and agent proposals all building on the same core event-and-relay model. March 2026 feels less like isolated experiments and more like separate lines locking into a larger system.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #14</title>
      <description>Wallet clients broadened NWC support while removing risky paths, Notedeck pushed signed release discovery onto Nostr, relay selection became more runtime-aware, and the episode closed with deep dives into NIP-94 and NIP-54.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwde5xccn2v35xqurgdpdv4hx76n6v9hhxasuyksuk</link>
      <pubDate>Fri, 27 Mar 2026 12:40:40 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1774615240844-enojzaosv</guid>
      <enclosure url="https://blossom.primal.net/3d6522f1d1a26483ddb6189266a96f9549b19d4c2ad4ef7d9ae259353b1ccb47.mp3" type="audio/mpeg" length="0" />
      
      <itunes:duration>35:21</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/db255d2b81069dfbd18087f0ea27c72448d067e9c0dc8f0aa0c1bbbf9e83ada4.png" />
      
      
      <content:encoded><![CDATA[Fmar, Sondre, Paul, and Max join Nostr Compass Podcast #14 to walk through [Newsletter #14](/en/newsletters/2026-03-18-newsletter/), covering the rapid expansion of Nostr Wallet Connect support, Notedeck's move to Nostr-native software release discovery, and a week of client, signer, relay, and protocol updates.

The episode then closes with two protocol deep dives, first on [NIP-94](/en/topics/nip-94/) file metadata and then on [NIP-54](/en/topics/nip-54/) wiki events, tying the week's concrete releases back to the specs shaping how software distribution and collaborative content work on Nostr.

### News

- **00:00 Intro**
  Opening setup for the week's topics, the guests, and the thread connecting wallet infrastructure, relay behavior, and spec work.

- **00:12 Wallet Connect support broadens, and wallet clients tighten failure paths**
  Amethyst pushes its [NIP-47](/en/topics/nip-47/) implementation toward near-full coverage with more request types, capability discovery, notifications, and hold invoice support. At the same time, Alby Hub adds multi-relay support, while Zeus removes an NWC keysend path after identifying a silent fund-drain risk, making this segment as much about narrowing dangerous failure modes as adding features.

- **03:58 Notedeck moves release discovery onto Nostr**
  Notedeck's signed updater now subscribes to kind `1063` release events, matches platform-specific binaries, and verifies SHA256 hashes before install. The hosts focus on why this matters: software release publishing and release discovery can now both move through Nostr-native events instead of depending on GitHub APIs or project websites.

- **06:10 Relay state is moving closer to runtime behavior**
  Damus fixes stale relay-list and LMDB crash paths, Primal iOS starts subscribing directly to a chat partner's write relays while conversations are open, and Nostur experiments with randomized scoring plus [NIP-66](/en/topics/nip-66/) liveness filtering. The broader point is that relay choice is turning from static setup into live runtime policy that clients measure, adapt, and repair.

### Releases

- **09:19 Primal Android 3.0.7**
  Primal Android adds zap-based poll voting, paginated vote loading, richer wallet transaction receipt fetching, and [NIP-89](/en/topics/nip-89/) client metadata tagging. The segment centers on how the app is connecting polling, wallets, and event attribution into one release cycle.

- **15:17 Amber v4.1.3**
  Amber adds built-in Tor, narrows signer permissions down to content-type-specific rules, hardens the offline flavor, and moves PIN storage into encrypted DataStore. The hosts frame this as signer-boundary hardening, not just another feature release.

- **16:13 Route96 v0.6.0**
  Route96 moves configuration and whitelist state into the database with hot reload, adds retention policies, and exposes stronger operator visibility through file stats and a richer user files endpoint.

- **16:45 OpenChat v0.1.0-alpha.11**
  OpenChat keeps tightening Marmot interoperability with NIP-59 gift wrap for Welcome events, MIP-02 and MIP-03 compliance work, and consolidation around the shared `marmot-cs` NIP-44 implementation. The emphasis here is reducing crypto and protocol drift across clients.

- **17:37 nak v0.19.0 and v0.19.1**
  nak's 0.19 line adds a group-forum UI, updates group metadata editing to a full replace flow, and replaces older `no-text` handling with `supported_kinds`, keeping the CLI aligned with current group spec direction.

### Project Updates

- **18:12 Amethyst**
  Beyond wallet connectivity, Amethyst adds [NIP-45](/en/topics/nip-45/) count queries to relay management, encrypted file uploads for [NIP-17](/en/topics/nip-17/) chats, and fuller [NIP-46](/en/topics/nip-46/) bunker login with heartbeat status. The conversation is about making complex remote-signing and relay states visible instead of mysterious.

- **18:58 Nostria**
  Nostria adds Web of Trust filtering for feeds and replies, expands content filtering and repost support on the summary page, and keeps broadening its payments, media, and publishing surface. This chapter is really about how ranking, media, and money are becoming one connected app layer.

- **22:03 Nostur**
  Nostur changes relay routing from a fixed plan into a scored policy using randomized scoring, nostr.watch liveness data, and Thompson sampling. It stands out as one of the clearest examples of adaptive outbox logic moving into production clients.

- **24:15 White Noise backend**
  whitenoise-rs hardens Blossom media boundaries by enforcing HTTPS, adding upload timeouts, and capping blob downloads at `100 MiB`. The hosts treat this as a practical example of securing the edge between encrypted messaging software and untrusted media infrastructure.

- **24:50 rust-nostr**
  rust-nostr adds convenience constructors for `LocalRelayBuilderNip42`, making it easier to turn relay auth policy into embedded relay or test code without repeating boilerplate.

- **25:19 Pika**
  Pika's latest releases focus on runtime convergence: a shared Marmot runtime facade, tighter OpenClaw agent lifecycle handling, and stricter backup and recovery safety. The user-facing surface is smaller this week, but the architectural cleanup matters as the stack grows.

### NIP Updates

- **26:14 NIP-54 (Wiki): Switch from Asciidoc to Djot (PR #2242)**
  [NIP-54](/en/topics/nip-54/) now treats Djot as canonical markup for wiki content. The segment focuses on parser simplicity, better cross-language tooling, and clearer agreement between independent clients.

- **27:16 NIP-19 (Bech32-Encoded Entities): Add input limit (PR #2264)**
  [NIP-19](/en/topics/nip-19/) now recommends capping encoded entity strings at 5000 characters, a small but useful guardrail for QR scans, deep links, share sheets, and pasted user input.

- **28:00 Nostr Key File for NIP-49 (Private Key Encryption) (PR #2269)**
  This proposal would standardize a `.nostrkey` format for encrypted key export and import, giving apps a more normal backup file flow than asking users to move raw `ncryptsec` strings around.

- **28:37 Membership state consistency for NIP-43 (Relay Access Metadata and Requests) (PR #2267)**
  The draft clarifies that relays should maintain one authoritative membership state per pubkey, simplifying group logic around joins, leaves, and replayed history.

- **29:01 Deletion guidance for NIP-17 (Private Direct Messages) (PR #2260)**
  This proposal tackles editing and deleting private messages through gift-wrapped delete events, which matters if [NIP-17](/en/topics/nip-17/) is going to fully replace older DM flows.

- **29:25 Share-intent URI for NIP-222 (PR #2266)**
  The proposed URI scheme would standardize how apps hand shared content into a Nostr client, smoothing one of the roughest app-to-app interop paths on desktop and mobile.

### NIP Deep Dives

- **30:11 NIP Deep Dive: NIP-94 (File Metadata)**
  [NIP-94](/en/topics/nip-94/) defines kind `1063` file metadata events with tags for URLs, MIME types, hashes, previews, fallbacks, and storage service hints. The hosts connect that spec directly to Notedeck's release updater, showing how the same event shape can describe both software artifacts and ordinary media.

- **32:51 NIP Deep Dive: NIP-54 (Wiki)**
  [NIP-54](/en/topics/nip-54/) wiki events use kind `30818`, normalized `d` tags, and article content in `content`, leaving clients to solve both rendering and ranking. The Djot switch matters because it removes parser ambiguity beneath that ranking problem, making multi-client wiki behavior easier to implement consistently.]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #13</title>
      <description>Shopstr commerce MCP, NIP-42 relay auth, Route96 labeling, Samizdat&#39;s Android alpha, and NIP-49 plus NIP-70 trace this week&#39;s Nostr hardening push.
</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwde5xv6rsdph8qmnjv3dw4mkzut5xcukw7s0pud9g</link>
      <pubDate>Tue, 24 Mar 2026 10:34:38 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1774348478792-uwaqt69gz</guid>
      <enclosure url="https://blossom.primal.net/2d32f45baaea6746f0f95efc4e197e3c09e29fa1b0dac3847a2454c6382d6b20.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:04:05</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/b163fad781e3b51742ad20577bd23e6a025b7d8a2fb52b86c70f470e17f216ef.png" />
      
      
      <content:encoded><![CDATA[Source newsletter: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/

### 00:00 Intro to ep13

This episode opens on a week where commerce tooling, relay authentication, signer UX, and protected-event enforcement all moved forward together. The throughline is practical hardening: better machine interfaces, tighter auth boundaries, and fewer shortcuts around key management.

### 00:32 Shopstr and Milk Market Open MCP Commerce Surfaces

Shopstr and Milk Market both added MCP surfaces so agents can move through listings, checkout, and post-purchase actions without scraping a web UI. The segment covers agent discovery via `.well-known/agent.json`, API-key auth, seller-side actions, and why Bitcoin-native and mixed fiat flows can now be exposed to tools in a cleaner way.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#shopstr-and-milk-market-open-mcp-commerce-surfaces
- Shopstr PR #234: https://github.com/shopstr-eng/shopstr/pull/234
- Shopstr PR #236: https://github.com/shopstr-eng/shopstr/pull/236
- Shopstr PR #235: https://github.com/shopstr-eng/shopstr/pull/235
- Milk Market commit: https://github.com/shopstr-eng/milk-market/commit/da6c0b499494b4e4861c4ff8a220e066c46285b3
- Milk Market PR #10: https://github.com/shopstr-eng/milk-market/pull/10
- Milk Market PR #11: https://github.com/shopstr-eng/milk-market/pull/11
- NIP-99 topic: https://nostrcompass.org/en/topics/nip-99/
- NIP-47 topic: https://nostrcompass.org/en/topics/nip-47/
- NIP-60 topic: https://nostrcompass.org/en/topics/nip-60/

### 06:07 NIP-42 Relay Auth Across Bunker, Signer, and Relay

This chapter follows NIP-42 from bunker to signer to relay. OAuth Bunker improves delegated identity handling, Amber adds relay-specific auth approval for kind `22242`, and strfry starts enforcing NIP-42 and NIP-70 together so protected events cannot be trivially republished through reposts.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#nip-42-relay-auth-across-bunker-signer-and-relay
- OAuth Bunker commit f0c7683: https://github.com/flox1an/oauth-bunker/commit/f0c7683cb2374fd9a3ebd1b186055da8abd2c2ff
- OAuth Bunker commit 6b8796c: https://github.com/flox1an/oauth-bunker/commit/6b8796c6c59c7d48dc1ede92d6de6bf54feb56cc
- Amber v4.1.3-pre4: https://github.com/greenart7c3/Amber/releases/tag/v4.1.3-pre4
- Amber PR #317: https://github.com/greenart7c3/Amber/pull/317
- Amber PR #318: https://github.com/greenart7c3/Amber/pull/318
- strfry PR #156: https://github.com/hoytech/strfry/pull/156
- strfry PR #176: https://github.com/hoytech/strfry/pull/176
- NIP-42 topic: https://nostrcompass.org/en/topics/nip-42/
- NIP-70 topic: https://nostrcompass.org/en/topics/nip-70/

### 14:36 Notedeck Adds NIP-11 Relay Limits and Agentium Features

Notedeck now respects relay limits from NIP-11 documents, adding background fetching, retry backoff, and more polite outbox behavior. The conversation also covers Agentium's clipboard image paste, synced run configs, worktree creation, model picker, and new headless UI testing infrastructure.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#notedeck-adds-nip-11-relay-limits-and-agentium-features
- PR #1316: https://github.com/damus-io/notedeck/pull/1316
- PR #1312: https://github.com/damus-io/notedeck/pull/1312
- PR #1333: https://github.com/damus-io/notedeck/pull/1333
- PR #1336: https://github.com/damus-io/notedeck/pull/1336
- PR #1338: https://github.com/damus-io/notedeck/pull/1338
- PR #1339: https://github.com/damus-io/notedeck/pull/1339
- PR #1314: https://github.com/damus-io/notedeck/pull/1314
- NIP-11 topic: https://nostrcompass.org/en/topics/nip-11/
- NIP-33 topic: https://nostrcompass.org/en/topics/nip-33/

### 17:26 diVine Ships v1.0.6 with E2E Test Infrastructure and NIP-49 Import

diVine v1.0.6 adds NIP-49 account import, multi-account handling, desktop targets, and a locally backed drafts library. The segment also highlights Patrol-based end-to-end testing against a full Docker stack, faster video loading via MP4-first fetches, cached cold starts, and stricter handling of AI-generated content labels.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#divine-ships-v106-with-e2e-test-infrastructure-and-nip-49-import
- diVine v1.0.6: https://github.com/divinevideo/divine-mobile/releases/tag/1.0.6
- PR #1928: https://github.com/divinevideo/divine-mobile/pull/1928
- PR #2105: https://github.com/divinevideo/divine-mobile/pull/2105
- PR #2076: https://github.com/divinevideo/divine-mobile/pull/2076
- PR #2104: https://github.com/divinevideo/divine-mobile/pull/2104
- PR #2100: https://github.com/divinevideo/divine-mobile/pull/2100
- NIP-49 topic: https://nostrcompass.org/en/topics/nip-49/
- NIP-05 topic: https://nostrcompass.org/en/topics/nip-05/

### 21:02 Vector v0.3.2 Ships NIP-77 Negentropy Sync and MLS Improvements

Vector pushes faster catch-up for MLS groups with negentropy-style sync, while also rebuilding audio, adding spoilers, richer previews, mentions, muting, and cancellable uploads. The show notes focus on why Vector is drawing a hard line around MLS for groups instead of mixing in NIP-17 group events.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#vector-v032-ships-nip-77-negentropy-sync-and-mls-improvements
- Vector v0.3.2: https://github.com/VectorPrivacy/Vector/releases/tag/v0.3.2
- Commit b06adf4: https://github.com/VectorPrivacy/Vector/commit/b06adf4af2673fb5ac5add01356999ea70628eac
- Commit 2179a51: https://github.com/VectorPrivacy/Vector/commit/2179a51c0449b3a70663a1573195b7945adf58ba
- NIP-17 topic: https://nostrcompass.org/en/topics/nip-17/
- NIP-44 topic: https://nostrcompass.org/en/topics/nip-44/

### 23:21 Route96 v0.5.0 and v0.5.1

Route96 adds automated AI labeling, retroactive backfill, moderation queues, EXIF privacy rejection, perceptual hashing, and a machine-readable `SKILL.md` for agent tooling. This is one of the clearest examples this week of media infrastructure becoming more inspectable and more automation-friendly at the same time.

- Release v0.5.0: https://github.com/v0l/route96/releases/tag/v0.5.0
- Release v0.5.1: https://github.com/v0l/route96/releases/tag/v0.5.1
- PR #58: https://github.com/v0l/route96/pull/58
- Commit 97b00a3: https://github.com/v0l/route96/commit/97b00a39e27b07053c2ad335dbf475bacba57bf8
- NIP-96 topic: https://nostrcompass.org/en/topics/nip-96/

### 25:21 Samizdat v1.0.0-alpha

Samizdat ships its first Android alpha with native key storage, biometric unlock, deep-link handling, signer handoff, and a more native mobile shell around the long-form reader. The segment covers why NIP-55 signing matters here: publishing can stay delegated while local reading and account access remain simple.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#samizdat-v100-alpha
- Samizdat v1.0.0-alpha: https://github.com/satsdisco/samizdat/releases/tag/v1.0.0-alpha
- Commit d17308f: https://github.com/satsdisco/samizdat/commit/d17308f3c2e6020e14074fbb1c03a8f60f29a3e6
- Commit e29dab8: https://github.com/satsdisco/samizdat/commit/e29dab84f7b58edd621f7b86ed7ca6458f965614
- NIP-55 topic: https://nostrcompass.org/en/topics/nip-55/

### 31:41 Calendar by Form* v0.2.0

Calendar by Form* extends recurring-event handling for NIP-52 and keeps building on private-event sharing with NIP-59 gift wrap support. The practical story is steady app-layer progress on private calendaring rather than one-off demos.

- Release: https://github.com/formstr-hq/nostr-calendar/releases/tag/v0.2.0
- PR #38: https://github.com/formstr-hq/nostr-calendar/pull/38
- NIP-52 topic: https://nostrcompass.org/en/topics/nip-52/
- NIP-59 topic: https://nostrcompass.org/en/topics/nip-59/

### 32:35 Mostro v0.16.4

Mostro adds rating-event duration and expiration fields, configurable order expiration, and duplicate development-fee protection. This chapter focuses on how P2P Bitcoin trading apps keep moving from protocol novelty toward operational correctness.

- Release: https://github.com/MostroP2P/mostro/releases/tag/v0.16.4
- PR #625: https://github.com/MostroP2P/mostro/pull/625
- PR #612: https://github.com/MostroP2P/mostro/pull/612
- PR #614: https://github.com/MostroP2P/mostro/pull/614
- PR #622: https://github.com/MostroP2P/mostro/pull/622

### 33:22 Mostro Mobile v1.2.1

Mostro Mobile adds encrypted multimedia in dispute chat, terminal-state UI auto-close, QR-based NWC wallet import, French localization, and push notification handling. It also carries the Schnorr padding fix that was critical for signing reliability.

- Release: https://github.com/MostroP2P/mobile/releases/tag/v1.2.1
- PR #514: https://github.com/MostroP2P/mobile/pull/514
- PR #503: https://github.com/MostroP2P/mobile/pull/503
- Commit 12eaee4: https://github.com/MostroP2P/mobile/commit/12eaee4d154fa31b07f82b96819de520e825aee6
- PR #496: https://github.com/MostroP2P/mobile/pull/496

### 34:34 0xchat v1.5.4

0xchat focuses this release on Linux polish, image upload fixes, npub.cash integration, and less wasteful UI behavior. The removal of a pointless 3-second polling timer is a small change with big user-facing impact on desktop responsiveness.

- Release: https://github.com/0xchat-app/0xchat-app-main/releases/tag/v1.5.4-release
- PR #49: https://github.com/0xchat-app/0xchat-app-main/pull/49

### 35:40 Keep v0.6.0

Keep ships backup and restore, threshold-share-based nsec recovery, Rust-generated animated QR frames, wallet descriptor coordination, and a signing audit trail. The release closes with a move to MIT in v0.6.1, which changes the project's downstream reuse posture as well as its feature set.

- Release v0.6.0: https://github.com/privkeyio/keep-android/releases/tag/v0.6.0
- Release v0.6.1: https://github.com/privkeyio/keep-android/releases/tag/v0.6.1
- PR #184: https://github.com/privkeyio/keep-android/pull/184
- PR #187: https://github.com/privkeyio/keep-android/pull/187
- PR #188: https://github.com/privkeyio/keep-android/pull/188
- PR #189: https://github.com/privkeyio/keep-android/pull/189
- PR #191: https://github.com/privkeyio/keep-android/pull/191

### 36:33 njump v0.3.0

njump's v0.3.0 release updates its underlying nostr library and makes a breaking change to `note1` parsing. Short segment, but important for anyone relying on njump as a gateway into Nostr content.

- Release: https://github.com/fiatjaf/njump/releases/tag/v0.3.0
- njump: https://njump.me

### 36:57 Roadstr v0.1.1

Roadstr debuts with a map-based interface for decentralized road event reporting, using vector tiles from openfreemap.org. The discussion treats it as another example of Nostr identity and event distribution being used for domain-specific utility apps.

- Release: https://github.com/jooray/roadstr/releases/tag/v0.1.1
- openfreemap: https://openfreemap.org

### 39:52 Bitcredit v0.5.3

Bitcredit adds clearer payment-state fields to the API and fixes signing-address handling for anonymous signers. The segment connects this to the broader trend of Nostr transport getting embedded into business and finance software that is not primarily social.

- Release: https://github.com/BitcreditProtocol/Bitcredit-Core/releases/tag/v0.5.3
- PR #846: https://github.com/BitcreditProtocol/Bitcredit-Core/pull/846
- PR #849: https://github.com/BitcreditProtocol/Bitcredit-Core/pull/849

### 42:08 OpenChat v0.1.0-alpha.3

OpenChat adds Amber and NIP-46 signer support, moves MLS persistence deeper into the service layer, and expands its CI-built targets. This section highlights the steady growth of the Marmot and .NET stack outside the original Rust implementation orbit.

- Release: https://github.com/DavidGershony/openChat/releases/tag/v0.1.0-alpha.3
- Commit e568d97: https://github.com/DavidGershony/openChat/commit/e568d979fe15eead19172f2eb6f8cf26ca845247
- Commit 4720bc8: https://github.com/DavidGershony/openChat/commit/4720bc8625136a0d5b0e23322bc0c50cd80577e8
- NIP-46 topic: https://nostrcompass.org/en/topics/nip-46/

### 43:00 OpenSignal v1.0.0

OpenSignal packages trading-copilot logic, chart rendering, Nostr publishing, Blossom uploads, and AI inference hooks into a Kotlin Multiplatform release. The story here is less about a single feature and more about how far application specialization on Nostr has now spread.

- Release: https://github.com/turizspace/OpenSignal/releases/tag/v1.0.0
- NIP-96 topic: https://nostrcompass.org/en/topics/nip-96/

### 44:02 Formstr

Formstr's new signup flow uses NIP-49 to encrypt private keys client-side into `ncryptsec`, letting users log in with a password without installing a browser signer. The notes use this segment as a bridge into the NIP-49 deep dive later in the episode.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#formstr
- PR #434: https://github.com/formstr-hq/nostr-forms/pull/434
- Commit e9c4fd5: https://github.com/formstr-hq/nostr-forms/commit/e9c4fd5dadfa0b83f1e87d7596eaf35f9fdb7da8
- NIP-49 topic: https://nostrcompass.org/en/topics/nip-49/

### 44:25 Amethyst

Amethyst lands Namecoin-backed NIP-05 resolution with race-condition fixes, follow-list import support, and custom ElectrumX server settings. This segment emphasizes censorship-resistant identity verification and the practical complexity of resolving non-DNS identifiers on mobile.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#amethyst
- PR #1734: https://github.com/vitorpamplona/amethyst/pull/1734
- PR #1771: https://github.com/vitorpamplona/amethyst/pull/1771
- PR #1785: https://github.com/vitorpamplona/amethyst/pull/1785
- PR #1786: https://github.com/vitorpamplona/amethyst/pull/1786
- NIP-05 topic: https://nostrcompass.org/en/topics/nip-05/

### 45:23 nostr-idb

nostr-idb adds NIP-91 AND-filter support plus interface updates and a deadlock fix. It is a useful reminder that protocol merges only matter once local storage and query libraries actually implement the new semantics.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#nostr-idb
- PR #6: https://github.com/hzrd149/nostr-idb/pull/6
- PR #8: https://github.com/hzrd149/nostr-idb/pull/8
- Commit b49b3d3: https://github.com/hzrd149/nostr-idb/commit/b49b3d32c575ff8214dc3fb07675109c2a971972
- NIP-91 topic: https://nostrcompass.org/en/topics/nip-91/

### 46:43 Pensieve

Pensieve adds cache TTL enforcement and miss coalescing to keep expensive time-series endpoints from stampeding the server. The point here is infrastructure economics: efficient archive and analytics layers matter as Nostr datasets grow.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#pensieve
- PR #8: https://github.com/andotherstuff/pensieve/pull/8

### 48:24 Blossom

Blossom merged two BUD-11 auth clarifications that tighten upload verification and clarify request hashing across media-management flows. This closes out the project update section with a protocol-and-server cleanup that matters for anyone building on hosted media.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#blossom
- PR #91: https://github.com/hzrd149/blossom/pull/91
- PR #93: https://github.com/hzrd149/blossom/pull/93

### 49:41 NIP-91 (AND Operator for Filters) (PR #1365)

NIP-91 is now merged, giving tag filters intersection semantics instead of plain OR behavior. The segment explains why that matters for both relay efficiency and downstream libraries like nostr-idb.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#nip-updates
- PR #1365: https://github.com/nostr-protocol/nips/pull/1365
- NIP-91 topic: https://nostrcompass.org/en/topics/nip-91/

### 50:15 NIP-66 (Relay Discovery and Liveness Monitoring): Defensive Measures (PR #2240)

PR #2240 adds explicit warnings about stale, wrong, or malicious monitoring data so clients do not over-trust one feed and cut off healthy relay graph edges. This is effectively the defensive appendix that outbox benchmark results demanded.

- PR #2240: https://github.com/nostr-protocol/nips/pull/2240
- NIP-66 topic: https://nostrcompass.org/en/topics/nip-66/

### 50:50 NIP-39 (External Identities in Profiles): kind 10011 Registry Cleanup (PR #2256)

This cleanup aligns the spec directly with the kind `10011` registry Amethyst already implemented, tightening the gap between documentation and deployed client behavior.

- PR #2256: https://github.com/nostr-protocol/nips/pull/2256
- NIP-39 topic: https://nostrcompass.org/en/topics/nip-39/

### 51:26 NIP-70 (Protected Events): Reject reposts that embed protected events (PR #2251)

PR #2251 closes a loophole in protected events by requiring relays to reject reposts that carry protected content. The show notes connect this back to the earlier strfry implementation and the real meaning of relay-enforced protection.

- PR #2251: https://github.com/nostr-protocol/nips/pull/2251
- NIP-70 topic: https://nostrcompass.org/en/topics/nip-70/
- strfry PR #176: https://github.com/hoytech/strfry/pull/176

### 52:30 NIP-71 (Video Events): Multiple Audio Tracks (PR #2255)

This proposal adds alternate audio tracks and audio-only streams to video events, making multilingual video and podcast-like delivery much easier to express through one stable video object.

- PR #2255: https://github.com/nostr-protocol/nips/pull/2255
- NIP-71 topic: https://nostrcompass.org/en/topics/nip-71/

### 53:28 NIP-11 (Relay Information Document) and NIP-66 Relay Attributes (PR #2257)

PR #2257 proposes a structured `attributes` field for relay info documents, giving clients machine-readable metadata that goes beyond human description text. That fits neatly with this week's broader theme of turning implicit behavior into explicit interfaces.

- PR #2257: https://github.com/nostr-protocol/nips/pull/2257
- NIP-11 topic: https://nostrcompass.org/en/topics/nip-11/
- NIP-66 topic: https://nostrcompass.org/en/topics/nip-66/

### 54:11 NIP Deep Dive: NIP-49 (Private Key Encryption)

The NIP-49 deep dive explains how `ncryptsec` works: scrypt-based key derivation, XChaCha20-Poly1305 encryption, bech32 encoding, and a one-byte security-history flag. The conversation centers on where NIP-49 fits relative to plain `nsec` handling, NIP-46 remote signing, and Android signer delegation through NIP-55.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#nip-deep-dive-nip-49-private-key-encryption
- NIP-49 topic: https://nostrcompass.org/en/topics/nip-49/
- Formstr PR #434: https://github.com/formstr-hq/nostr-forms/pull/434
- nsec.app: https://nsec.app
- Alby Hub: https://github.com/getAlby/hub
- NIP-46 topic: https://nostrcompass.org/en/topics/nip-46/
- NIP-55 topic: https://nostrcompass.org/en/topics/nip-55/

### 59:17 NIP Deep Dive: NIP-70 (Protected Events)

The final segment walks through the `-` tag, the AUTH challenge flow, kind `22242` signed responses, relay-side enforcement, and the limits of what protected events can actually guarantee. It is a clean closing theme for the episode because it ties together bunker behavior, signer UX, relay policy, and repost enforcement.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-11-newsletter/#nip-deep-dive-nip-70-protected-events
- NIP-70 topic: https://nostrcompass.org/en/topics/nip-70/
- NIP-42 topic: https://nostrcompass.org/en/topics/nip-42/
- strfry PR #156: https://github.com/hoytech/strfry/pull/156
- strfry PR #176: https://github.com/hoytech/strfry/pull/176]]></content:encoded>
      <podcast:value type="lightning" method="lightning">
        <podcast:valueRecipient name="Grafton" type="lnaddress" address="Browntiger1@primal.net" split="20" />
        <podcast:valueRecipient name="Florian" type="lnaddress" address="npub1klr0dy2ul2dx9llk58czvpx73rprcmrvd5dc7ck8esg8f8es06qs427gxc@npub.cash" split="20" />
        <podcast:valueRecipient name="Calvadev" type="lnaddress" address="calvadev@npub.cash" split="20" />
        <podcast:valueRecipient name="Max" type="lnaddress" address="Max@npub.cash" split="20" />
        <podcast:valueRecipient name="Marcano" type="lnaddress" address="marcano@getalby.com" split="20" />
      </podcast:value>
    </item>
    <item>
      <title>Nostr Compass #12</title>
      <description>Podcast #12 is out. We unpack outbox benchmarks, ContextVM&#39;s MCP, and MDK&#39;s public release. We also run through this week&#39;s releases and NIP updates. Then we trace five Februaries of Nostr from the 2021 rewrite to 2026 infrastructure growth. Read the issue at nostrcompass.org.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwde5xqurgwphxscnjwpdd4shjurp0q6x76sy36rd6</link>
      <pubDate>Sat, 21 Mar 2026 09:21:14 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1774084874198-maypax4oj</guid>
      <enclosure url="https://blossom.primal.net/d2b742322a8f1a804adacaf863581b7d2b8cb138c21c5281d9bf529d620d23e2.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:46:08</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/788ab3ac36f8f12c13f022aa108ffbbe3fa0bd1f4b3882a37b5ab62349fe2fa8.png" />
      
      
      <content:encoded><![CDATA[Source newsletter: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/

### 00:00 Intro

This episode opens with the week's big themes: relay routing, AI transport over Nostr, Marmot's first public release, and a February-by-February retrospective.

### 00:30 Outbox Model Under the Microscope

Nostrability benchmarked 14 relay selection algorithms across 15 clients and libraries, showing how far smarter relay routing can push recall compared with hardcoded relay sets. The segment covers set-cover plus Thompson Sampling, NIP-66 liveness filtering, faster feed load times, and the practical case for hybrid outbox enrichment in legacy clients.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#outbox-model-under-the-microscope
- Nostrability outbox repo: https://github.com/nostrability/outbox
- NIP-65 topic: https://nostrcompass.org/en/topics/nip-65/
- NIP-66 topic: https://nostrcompass.org/en/topics/nip-66/
- nostr.watch liveness data: https://nostr.watch

### 14:39 ContextVM Opens MCP NIP and Ships Ephemeral Gift Wraps

ContextVM opened the two proposals that anchor its Nostr transport strategy: one for MCP JSON-RPC over Nostr and one for ephemeral gift wraps. This section explains why AI tool traffic benefits from relay-discarded delivery semantics and how ContextVM is trying to standardize that workflow without overloading the base protocol.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#contextvm-opens-mcp-nip-and-ships-ephemeral-gift-wraps
- ContextVM: https://contextvm.org
- MCP over Nostr PR: https://github.com/nostr-protocol/nips/pull/2246
- Ephemeral Gift Wrap PR: https://github.com/nostr-protocol/nips/pull/2245
- CEP-19: https://docs.contextvm.org/spec/ceps/cep-19/

### 27:09 Marmot Development Kit Ships First Public Release

MDK v0.6.0 lands as the first public release of the Marmot Development Kit, bundling encrypted media, deterministic commit race handling, zeroizing secrets, and bindings beyond Rust. The segment also digs into the breaking switch from NIP-44 strings to ChaCha20-Poly1305 for kind 445 messages and the knock-on changes across the Marmot spec, MDK, and marmot-ts.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#marmot-development-kit-ships-first-public-release
- MDK v0.6.0: https://github.com/marmot-protocol/mdk/releases/tag/v0.6.0
- MIP-03 change: https://github.com/marmot-protocol/marmot/pull/48
- MDK PR #208: https://github.com/marmot-protocol/mdk/pull/208
- marmot-ts PR #54: https://github.com/marmot-protocol/marmot-ts/pull/54

### 32:56 Wisp Ships from Alpha to Beta

Wisp moved from its first alpha to beta in eight days, shipping outbox support, NIP-55 signing, Tor, NIP-47, local translation, and a real-time social graph surprisingly fast for a new client. This chapter looks at what that pace says about modern Nostr app bootstrapping and where the feature set already overlaps with longer-running clients.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#wisp-ships-from-alpha-to-beta
- Wisp repo: https://github.com/barrydeen/wisp
- v0.1.0-alpha: https://github.com/barrydeen/wisp/releases/tag/v0.1.0-alpha
- v0.3.4-beta: https://github.com/barrydeen/wisp/releases/tag/v0.3.4-beta

### 34:44 Vector v0.3.1

Vector ships group management upgrades, deterministic negentropy sync, GPU-accelerated voice-to-text, and broad performance wins. The discussion focuses on why reliable offline recovery matters for Marmot messaging and why 15x improvements across startup and UI paths are notable for an encrypted chat app.

- Release: https://github.com/VectorPrivacy/Vector/releases/tag/v0.3.1
- Negentropy topic: https://nostrcompass.org/en/topics/negentropy/

### 36:20 Alby Hub v1.21.5

Alby Hub adds a second default relay for NWC reliability, fixes malformed zap display issues, and expands its app store integrations. The key point here is operational resilience: fewer relay restart failures for self-custodial wallet control.

- Release: https://github.com/getAlby/hub/releases/tag/v1.21.5
- NIP-47 topic: https://nostrcompass.org/en/topics/nip-47/
- NIP-57 topic: https://nostrcompass.org/en/topics/nip-57/

### 38:00 nospeak v0.12.x

nospeak adds app locking, a large translation wave, theme work, Android video poster generation, chat export, and profile-view shortcuts. The segment centers on how quality-of-life work and localization keep text-first messaging clients competitive.

- v0.12.0: https://github.com/psic4t/nospeak/releases/tag/v0.12.0
- v0.12.1: https://github.com/psic4t/nospeak/releases/tag/v0.12.1
- v0.12.2: https://github.com/psic4t/nospeak/releases/tag/v0.12.2

### 39:00 Citrine v2.0.0-pre2

Citrine improves relay performance with new indexes and coroutine changes, gives each hosted web app its own port, and expands search plus event inspection. This is a useful look at the personal-relay side of Nostr scaling.

- Release: https://github.com/greenart7c3/Citrine/releases/tag/v2.0.0-pre2

### 39:36 NoorNote v0.5.x

NoorNote shipped eight releases, bringing Amber support, NIP-71 publishing, relay browsing, custom emoji reactions, and sync fixes in its collaborative tribes system. The episode uses NoorNote as an example of how smaller apps now iterate like full platform products.

- v0.5.0: https://github.com/77elements/noornote/releases/tag/v0.5.0
- v0.5.7: https://github.com/77elements/noornote/releases/tag/v0.5.7
- NIP-55 topic: https://nostrcompass.org/en/topics/nip-55/
- NIP-71 topic: https://nostrcompass.org/en/topics/nip-71/
- NIP-30 topic: https://nostrcompass.org/en/topics/nip-30/

### 40:35 NosCall v0.5.1

NosCall adds voice messages, better desktop entry and contact management, export tools, and accessibility support tied to system font size. The broader theme is steady usability work in Nostr-native calling.

- Release: https://github.com/sanah9/noscall/releases/tag/v0.5.1-release

### 41:06 Shosho v0.13.0

Shosho adds replay downloads, NIP-05 profile verification, better RTMP publishing internals, and fixes for low-bandwidth and older-device streaming. This segment highlights how live media apps keep maturing on top of Nostr identity and distribution.

- Release: https://github.com/r0d8lsh0p/shosho-releases/releases/tag/v0.13.0
- NIP-05 topic: https://nostrcompass.org/en/topics/nip-05/
- Zap.Stream: https://zap.stream

### 41:56 nostr-java v2.0.0

nostr-java's major bump adds configurable WebSocket buffer sizes so Java apps can process larger events without truncation. It is a small but meaningful library update for developers dealing with growing event payload sizes.

- Release: https://github.com/tcheeric/nostr-java/releases/tag/v2.0.0

### 42:34 Prism 1.1.0

Prism adds kind 30023 long-form support and a Markdown editor, then follows quickly with a bug-fix release. The discussion connects this to ongoing expansion of writing and publishing workflows inside Nostr clients.

- Prism 1.1.0: https://github.com/hardran3/Prism/releases/tag/1.1.0
- Prism 1.1.1: https://github.com/hardran3/Prism/releases/tag/1.1.1

### 42:56 Angor v0.2.6

Angor ships Boltz integration and a one-click invest flow while pushing both invest and fund project paths through testnet. This section looks at crowdfunding UX and how much of the interface still remains to be finished.

- Release: https://github.com/block-core/angor/releases/tag/v0.2.6

### 43:47 NIP-91: AND Operator for Filters

NIP-91 merges and gives relays an AND operator for tag-array filters, which means clients can ask for events matching all specified tag values instead of any one of them. It is a technical change with practical bandwidth and indexing benefits.

- PR #1365: https://github.com/nostr-protocol/nips/pull/1365

### 46:21 NIP-30: Emoji Set Address in Tags

The NIP-30 update lets custom emoji tags include an optional set address, so clients can jump from an individual emoji to the pack it came from. This comes straight out of work in Chachi and makes emoji ecosystems more navigable.

- PR #2247: https://github.com/nostr-protocol/nips/pull/2247
- NIP-30 topic: https://nostrcompass.org/en/topics/nip-30/
- Chachi: https://github.com/purrgrammer/chachi

### 46:47 NIP-29: Add unallowpubkey and unbanpubkey

NIP-29 gets two new moderation commands that separate removing someone from an allowlist from banning them outright. That sounds small, but it fixes awkward group-admin flows that previously forced harsher actions than moderators intended.

- PR #2111: https://github.com/nostr-protocol/nips/pull/2111
- NIP-29 topic: https://nostrcompass.org/en/topics/nip-29/

### 47:30 NIP-A7: Spells

Spells proposes portable saved queries as kind 777 events, with runtime variables like `$me` and `$contacts` plus relative timestamps. The episode treats it as a serious attempt to make feed logic portable across clients rather than trapped in app-specific UI.

- PR #2244: https://github.com/nostr-protocol/nips/pull/2244
- nak: https://github.com/fiatjaf/nak
- Grimoire: https://github.com/purrgrammer/grimoire

### 48:40 NIP-59: Ephemeral Gift Wrap (kind 21059)

This deeper pass on PR #2245 explains why ephemeral gift wrap matters beyond ContextVM specifically. The core idea is simple: keep delivery semantics, drop persistence, and reduce the metadata trail for short-lived encrypted exchanges.

- PR #2245: https://github.com/nostr-protocol/nips/pull/2245
- NIP-59 topic: https://nostrcompass.org/en/topics/nip-59/
- NIP-01 topic: https://nostrcompass.org/en/topics/nip-01/

### 54:52 ContextVM: MCP JSON-RPC over Nostr

Here the conversation zooms in on PR #2246 itself: ephemeral kind 25910 events, `p` and `e` tags for addressing and correlation, and a deliberately thin NIP that leaves richer semantics to the ContextVM spec. It is a useful case study in how adjacent protocol layers should standardize without overfitting the base layer.

- PR #2246: https://github.com/nostr-protocol/nips/pull/2246
- ContextVM spec docs: https://docs.contextvm.org
- Model Context Protocol: https://modelcontextprotocol.io/

### 55:58 NIP-29: Audio/Video Live Spaces

fiatjaf's draft extends NIP-29 groups into live audio and video spaces using LiveKit plus relay-issued JWTs. The segment unpacks the appeal of inheriting group permissions from relay-side membership and the trade-offs in pulling real-time media into relay-backed group systems.

- PR #2238: https://github.com/nostr-protocol/nips/pull/2238
- LiveKit: https://livekit.io/
- NIP-29 topic: https://nostrcompass.org/en/topics/nip-29/

### 57:44 Collaborative Event Ownership

This proposal introduces a pointer event that lists multiple authorized co-owners for a shared addressable resource. The show notes focus on the implications for shared wikis, collaborative docs, and other multi-author state that no longer has to live under one key.

- PR #2235: https://github.com/nostr-protocol/nips/pull/2235

### 01:01:24 NIP-09: Cascading Deletion of Reposts

PR #2234 would have relays delete reposts when an original author deletes the source note, targeting privacy leaks that survive through repost history. The discussion turns on whether relay-side cleanup is the right place to enforce that expectation.

- PR #2234: https://github.com/nostr-protocol/nips/pull/2234
- NIP-09 topic: https://nostrcompass.org/en/topics/nip-09/

### 01:03:55 NIP-07: peekPublicKey

The proposed `peekPublicKey()` method gives browser extensions a no-prompt way to expose the current pubkey when auto-login is already enabled. This chapter weighs convenience for web clients against the long-running caution around silent identity access in NIP-07 signers.

- PR #2233: https://github.com/nostr-protocol/nips/pull/2233
- NIP-07 topic: https://nostrcompass.org/en/topics/nip-07/

### 01:05:31 NIP-BB: Book

NIP-BB sketches a book-publishing format using four addressable event kinds for cover metadata, chapter structure, and episode prose. The episode focuses on how fractional indexing and zap-based reviews could make long-form publishing more native to Nostr.

- PR #2248: https://github.com/nostr-protocol/nips/pull/2248
- NIP-32 topic: https://nostrcompass.org/en/topics/nip-32/

### 01:09:08 NIP-54: Switch from Asciidoc to Djot

This proposal would move NIP-54 wiki content from Asciidoc to Djot, partly to improve internationalized wikilinks and editor ergonomics. It is a standards-maintenance conversation, but one with real downstream effects for documentation tooling.

- PR #2242: https://github.com/nostr-protocol/nips/pull/2242
- NIP-54 topic: https://nostrcompass.org/en/topics/nip-54/
- Djot: https://djot.net/

### 01:09:50 NIP-66: Defensive Measures

PRs #2240 and #2241 fold lessons from the outbox benchmarks back into NIP-66, especially around edge cases and monitoring output tags. The segment closes the loop between empirical relay-routing research and protocol refinement.

- PR #2240: https://github.com/nostr-protocol/nips/pull/2240
- PR #2241: https://github.com/nostr-protocol/nips/pull/2241
- NIP-66 topic: https://nostrcompass.org/en/topics/nip-66/

### 01:10:25 NIP-31402: SARA Revenue Share Offering Registry

The SARA registry wiki entry proposes addressable events for revenue-share offerings discovered across relays. The episode frames it as another sign that Nostr keeps expanding into application-specific registries rather than staying a social-only protocol.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#nip-updates
- SARA entry context: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/

### 01:11:39 Damus: NIP-89 (Recommended Application Handlers)

Damus adds NIP-89 client tags on posting paths, a privacy toggle for emission, and storage usage tooling, while an open PR improves quoted-note fallback through NIP-65 relay lists. The takeaway is that even a mature flagship client is still tightening attribution, storage introspection, and relay recovery behavior.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#damus-nip-89-recommended-application-handlers
- PR #3337: https://github.com/damus-io/damus/pull/3337
- PR #3652: https://github.com/damus-io/damus/pull/3652
- PR #3657: https://github.com/damus-io/damus/pull/3657

### 01:12:27 Amethyst: NIP-39 (External Identities), NIP-C0, NIP-66

Amethyst merged a broad wave of NIPs, spanning external identities, code snippets, relay monitoring, encrypted desktop DMs, and alternative NIP-05 verification through Namecoin. This section is a reminder that Amethyst remains one of the fastest protocol-adoption clients in the ecosystem.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#amethyst-nip-39-external-identities-nip-c0-nip-66
- PR #1747: https://github.com/vitorpamplona/amethyst/pull/1747
- PR #1744: https://github.com/vitorpamplona/amethyst/pull/1744
- PR #1742: https://github.com/vitorpamplona/amethyst/pull/1742
- PR #1710: https://github.com/vitorpamplona/amethyst/pull/1710
- PR #1733: https://github.com/vitorpamplona/amethyst/pull/1733
- PR #1734: https://github.com/vitorpamplona/amethyst/pull/1734

### 01:14:11 Notedeck: Outbox Architecture

Notedeck is moving from ad-hoc relay pool management toward a centralized outbox model with account-scoped subscriptions. In practice that means better DM routing and a clearer relay architecture for a cross-platform client that keeps getting more ambitious.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#notedeck-outbox-architecture
- PR #1303: https://github.com/damus-io/notedeck/pull/1303

### 01:14:29 Pika: Per-Group Profiles and Tutorial Feed

Pika adds encrypted per-group profiles inside Marmot chats and a `pika-news` tutorial site that turns PR diffs into walkthroughs. This segment uses Pika to show how encrypted group apps are starting to build their own internal social and educational layers.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#pika-per-group-profiles-and-tutorial-feed
- PR #368: https://github.com/sledtools/pika/pull/368
- PR #401: https://github.com/sledtools/pika/pull/401

### 01:15:41 diVine: Embeddable Widgets and Video Replies

diVine's latest work includes embeddable widgets, feature-flagged video replies, and Bluesky-style content filters. The episode treats this as a strong example of video products on Nostr iterating toward distribution plus moderation tooling at the same time.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#divine-embeddable-widgets-and-video-replies
- PR #1843: https://github.com/divinevideo/divine-mobile/pull/1843
- PR #1915: https://github.com/divinevideo/divine-mobile/pull/1915
- PR #1797: https://github.com/divinevideo/divine-mobile/pull/1797

### 01:16:17 strfry: REQ Filter Validation

strfry adds configurable REQ filter validation for operators that need tighter query controls, especially for NWC relay deployments. The discussion also flags the open zstd-compression work as part of the same operational-efficiency trend.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#strfry-req-filter-validation
- PR #163: https://github.com/hoytech/strfry/pull/163
- PR #173: https://github.com/hoytech/strfry/pull/173

### 01:17:11 rust-nostr: NIP-62 Request to Vanish

rust-nostr now supports NIP-62 across LMDB, SQLite, and in-memory backends, including options around NIP-09 and vanish enforcement. That makes the library-side privacy story more consistent across deployment environments.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#rust-nostr-nip-62-request-to-vanish
- PR #1268: https://github.com/rust-nostr/nostr/pull/1268
- PR #1270: https://github.com/rust-nostr/nostr/pull/1270
- PR #1272: https://github.com/rust-nostr/nostr/pull/1272
- NIP-62 topic: https://nostrcompass.org/en/topics/nip-62/

### 01:17:29 NDK: Collaborative Events and NIP-46 Timeout

NDK adds collaborative events for multi-author documents and a timeout for NIP-46 signers so bunker calls no longer hang forever. It is a good snapshot of NDK's role as developer infrastructure rather than just a client helper library.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#ndk-collaborative-events-and-nip-46-timeout
- PR #380: https://github.com/nostr-dev-kit/ndk/pull/380
- PR #381: https://github.com/nostr-dev-kit/ndk/pull/381

### 01:18:00 TENEX: Agent Categorization and Pubkey Gating

TENEX merges role-based agent categorization and front-door pubkey gating, both aimed at constraining who gets routed and what tools different agents can use. This chapter sits at the intersection of Nostr and agent security architecture.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#tenex-agent-categorization-and-pubkey-gating
- PR #91: https://github.com/tenex-chat/tenex/pull/91
- PR #87: https://github.com/tenex-chat/tenex/pull/87

### 01:19:14 Zap Cooking: Membership Dashboard

Zap Cooking ships subscription dashboards, two-phase group loading, proper wallet mnemonic encryption, invite-only groups, Nostr backups, performance work, and print customization. The segment makes the case that Nostr apps are now doing ordinary product engineering at a high clip, not just protocol demos.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#zap-cooking-membership-dashboard
- PR #228: https://github.com/zapcooking/frontend/pull/228
- PR #227: https://github.com/zapcooking/frontend/pull/227
- PR #224: https://github.com/zapcooking/frontend/pull/224
- PR #213: https://github.com/zapcooking/frontend/pull/213
- PR #218: https://github.com/zapcooking/frontend/pull/218
- PR #210: https://github.com/zapcooking/frontend/pull/210
- PR #208: https://github.com/zapcooking/frontend/pull/208
- PR #205: https://github.com/zapcooking/frontend/pull/205
- PR #222: https://github.com/zapcooking/frontend/pull/222

### 01:20:36 Keep: Rust-Driven State Migration

Keep removes multiple Kotlin config stores in favor of Rust-driven shared state and adds encrypted backup and restore. The main throughline is consolidation around Rust cores even in Android-first apps.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#keep-rust-driven-state-migration
- PR #178: https://github.com/privkeyio/keep-android/pull/178
- PR #179: https://github.com/privkeyio/keep-android/pull/179

### 01:21:01 Mostro Mobile: Dispute Chat Encryption

Mostro Mobile migrates dispute chat toward a cleaner shared-key and gift-wrap-based design, fixes a BIP-340 signature bug, adjusts payment methods, and gains better status labels. The segment covers both mobile and server-side Mostro fixes as evidence of protocol hardening in P2P Bitcoin markets.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#mostro-mobile-dispute-chat-encryption
- PR #495: https://github.com/MostroP2P/mobile/pull/495
- PR #501: https://github.com/MostroP2P/mobile/pull/501
- PR #496: https://github.com/MostroP2P/mobile/pull/496
- PR #502: https://github.com/MostroP2P/mobile/pull/502
- PR #493: https://github.com/MostroP2P/mobile/pull/493
- Mostro PR #599: https://github.com/MostroP2P/mostro/pull/599
- Mostro PR #606: https://github.com/MostroP2P/mostro/pull/606

### 01:22:56 Five Years of Nostr Februaries

The episode shifts from current development to historical perspective, tracing what February meant for Nostr from the rewrite era to today's application-layer sprawl. It is the connective tissue that makes the week's stories feel like part of a longer arc.

- Newsletter section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#five-years-of-nostr-februaries

### 01:23:07 February 2021: The Rewrite

February 2021 brought the NIP-01 rewrite that introduced the EVENT, REQ, and CLOSE model that still defines Nostr. The segment also covers early NIP-04 messaging, noscl, nostr-rs, and the tiny relay network that existed before the protocol stabilized.

- February 2021 section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#february-2021-the-rewrite
- NIP-01 rewrite commit: https://github.com/nostr-protocol/nostr/commit/33a1a70
- noscl: https://github.com/fiatjaf/noscl
- nostr-rs: https://github.com/futurepaul/nostr-rs

### 01:25:49 February 2022: Building Momentum

The 2022 segment covers early NIP growth, nostr-rs-relay's heavy lifting, Uncle Bob's more-speech client, nos2x, and the first real momentum after Hacker News attention. It shows a protocol still small enough for one relay implementation to matter enormously.

- February 2022 section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#february-2022-building-momentum
- Hacker News thread: https://news.ycombinator.com/item?id=29749061
- nostr-rs-relay: https://github.com/scsibug/nostr-rs-relay
- more-speech: https://github.com/unclebob/more-speech
- nos2x: https://github.com/fiatjaf/nos2x
- branle: https://github.com/fiatjaf/branle
- nostr-tools: https://github.com/nbd-wtf/nostr-tools
- go-nostr: https://github.com/nbd-wtf/go-nostr

### 01:30:08 February 2023: International Attention

This is the Damus breakout chapter: App Store approval, China's removal, explosive relay and user growth, and the merge wave that brought zaps, long-form content, relay lists, Nostr Connect, and badges. It is the month where Nostr stopped being obscure.

- February 2023 section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#february-2023-international-attention
- Damus App Store coverage: https://www.coindesk.com/tech/2023/02/01/decentralized-social-media-project-nostrs-damus-gets-listed-on-apple-app-store
- China removal coverage: https://techcrunch.com/2023/02/02/damus-pulled-from-apples-app-store-in-china-after-two-days/
- HRF grant: https://hrf.org/devfund2023q1

### 01:33:20 February 2024: Protocol Durability

By 2024 the focus had shifted from breakout attention to better foundations: NIP-17 and gift wrap, NIP-29 groups, NIP-92 media metadata, BREAKING.md, and hard evidence that relay economics were still fragile. This segment explains why durability became the central protocol concern.

- February 2024 section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#february-2024-protocol-durability
- NIP-29 merge: https://github.com/nostr-protocol/nips/pull/566
- BREAKING.md commit: https://github.com/nostr-protocol/nips/commit/62c48eff
- Relay economics paper: https://arxiv.org/abs/2402.05709

### 01:38:36 February 2025: Infrastructure Growth

February 2025 highlights vanish requests, ecash standard simplification, steady client releases, meetups, and early DVMCP work linking Nostr with MCP-like agent workflows. The episode frames it as the year infrastructure got more specialized and more useful.

- February 2025 section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#february-2025-infrastructure-growth
- NIP-62 topic: https://nostrcompass.org/en/topics/nip-62/
- GRAIN: https://github.com/0ceanSlim/grain

### 01:40:22 February 2026: Beyond Social Media

The closing historical chapter covers Mostro, Zapstore, White Noise, agent proposals, ContextVM, Burrow, FIPS mesh networking, OpenSats grants, and the sense that Nostr is now infrastructure for far more than public posting. That broader scope is the episode's final thesis.

- February 2026 section: https://nostrcompass.org/en/newsletters/2026-03-04-newsletter/#february-2026-beyond-social-media
- ContextVM coverage: https://nostrcompass.org/en/newsletters/2026-02-25-newsletter/#contextvm-mcp-over-nostr
- Burrow coverage: https://nostrcompass.org/en/newsletters/2026-02-25-newsletter/#burrow-mls-messaging-for-ai-agents
- FIPS coverage: https://nostrcompass.org/en/newsletters/2026-02-25-newsletter/#fips-nostr-native-mesh-networking
- OpenSats grants: https://opensats.org/blog/fifteenth-wave-of-nostr-grants
]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #11</title>
      <description>FIPS mesh networking, White Noise real-time messaging, HAVEN multi-npub relay, Burrow agent messaging, and NIP-55 Android signing deep dive.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwdej8ymn2dfhxqmnwdedxpk8zdmsw56hqagsrwap2</link>
      <pubDate>Sun, 08 Mar 2026 13:32:25 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1772975570777-0lq7pu5pu</guid>
      <enclosure url="https://blossom.primal.net/f3665be995ebe188b9c8a84ca2d392c452dc061e4f9eb4a4181eee1aa49be9b3.ogg " type="audio/ogg" length="0" />
      
      <itunes:duration>01:24:24</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/fef8d19860f851aaeda64e643ffe9b03714f7b92997a059f8d68b8b56cf55ec4.png" />
      
      
      <content:encoded><![CDATA[Walking through newsletter #11 covering FIPS mesh networking with Nostr keypairs, White Noise v0.3.0 real-time messaging, HAVEN v1.2.0 multi-npub relay support, Burrow MLS messaging for AI agents, and deep dives into NIP-55 Android signing and NIP-60 Cashu wallet synchronization.

### News

Notecrumbs fixes concurrency deadlocks in damus.io link previews with watch channels and adds relay rate limiting. ContextVM bridges Nostr with the Model Context Protocol, enabling MCP servers across the relay network with CEP-8 payments. A blog post from jgmontoya details how White Noise handles decentralized user search through a five-tier producer-consumer architecture. FIPS ships a working Rust implementation of self-organizing mesh networking using Nostr keypairs, spanning tree routing, and dual-layer encryption over any datagram transport.

### Releases

- **HAVEN v1.2.0** - Multi-npub support, JSONL backup, configurable Web of Trust depth
- **White Noise v0.3.0** - Real-time messaging, Amber signer (NIP-55), image sharing, 160+ improvements
- **diVine 1.0.5** - Video playback fixes, Kind 22236 view events for creator analytics
- **Coracle 0.6.30** - Video thumbnail support
- **Nostur v1.26.0** - Live Streams feed, Blossom GIF hosting, redesigned Settings
- **nak v0.18.5** - New `nak profile` subcommand, NIP-05 support in `git clone`
- **Pika v0.5.3** - File upload and drag-and-drop media on desktop
- **Ridestr v0.2.6** - Accessibility fixes, Broadcast RoadFlare, HTLC escrow payments
- **Unfiltered v1.0.6** - Improved user search, automatic relay reconnection

### New Projects

- **Burrow** - MLS-encrypted messaging for AI agents and humans on Nostr, with Rust CLI daemon and Flutter app
- **Nostria Signer Extension** - Chromium browser extension for vault and identity management with NIP-07 signing

### Project Updates & Open PRs

Formstr migrates to the formstr-hq organization. Open PRs: Damus outbox model

---

## Timestamps

00:00:00 Intro
00:00:19 Notecrumbs Stability Improvements
00:03:25 MCP Over Nostr
00:06:51 Documents Decentralized User Search
00:13:04 FIPS - Nostr-Native Mesh Networking
00:24:40 HAVEN v1.2.0
00:29:07 White Noise v0.3.0
00:30:50 diVine 1.0.5
00:36:36 Coracle 0.6.30
00:37:32 Nostur v1.26.0
00:38:57 nak v0.18.5
00:39:49 Pika v0.5.3
00:44:34 Ridestr v0.2.6
00:47:02 Unfiltered v1.0.6
00:48:11 Burrow - MLS Messaging for AI Agents
00:54:36 MOQ
00:56:54 Nostria Signer Extension
00:58:31 Formstr Migrates to New Organization
00:59:05 Damus Outbox Model (PR #3602)
00:59:50 Notedeck Cross-Platform Notifications (PR #1296)
01:00:34 NDK Cashu v3 Upgrade (PR #370)
01:00:47 Zeus Cashu Offline (PR #3742)
01:01:36 Shopstr Encrypted Digital Delivery (PR #231)
01:02:18 NIP-85 Service Provider Discoverability
01:02:50 NIP-29 Removes Unmanaged Groups
01:03:50 NIP-11 Removes Deprecated Fields
01:04:58 NIP-39 Moves Identity Tags
01:05:25 NIP-AE: Agents
01:05:55 NIP-XX: AI Agent Messages
01:07:27 NIP-AC: DVM Agent Coordination
01:08:06 NIP-144: Service Authorization Protocol
01:08:21 NIP-DC: Nostr Webxdc
01:10:23 NIP Deep Dive: NIP-55 (Android Signer Application)
01:15:01 NIP Deep Dive: NIP-60 (Cashu Wallet)]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #10</title>
      <description>Blossom local caching, competing AI agent NIPs, FROST signing, decentralized maps, Mostro Lightning wallet, and NIP-85 Trusted Assertions deep dive.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwdejxu6r2wpexs6rjvpdwee8zvrxv3khw6glqdj84</link>
      <pubDate>Thu, 05 Mar 2026 21:24:54 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1772745894490-vrq0fdmwi</guid>
      <enclosure url="https://blossom.primal.net/193b251f8368b793351f9d37c23d725b4b9fcc532a444388f0e48fc775b53cd3.mp3 " type="audio/mpeg" length="0" />
      
      <itunes:duration>00:00</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/429a28f2393accf0f3955b5a5d05144bc8ac88fa5fe6453667bd6fb6bf2ae41c.png" />
      
      
      <content:encoded><![CDATA[This week the panel walks through a Blossom local cache layer emerging from four independent projects, Alby's new NWC developer sandbox, and competing AI agent proposals arriving on the same week. The conversation covers HAVEN's multi-npub relay, Mostro Mobile's built-in Lightning wallet, decentralized map tiles, FROST threshold signing, and a wave of NIP merges including Trusted Assertions and calendar event indexing. Deep dives into NIP-85 and NIP-52 round out the episode.

### Blossom & Media Infrastructure

- **Blossom Local Cache Layer** - Four independent projects (Morganite, Aerith, a reference spec, and Prism) converge on offline media access for Android, moving beyond simple upload-and-retrieve
- **Aerith v0.2** - Image labeling, bulk mirror/tag/delete operations, filtering by label and file type, plus initial local Blossom cache support
- **Hashtree** - Content-addressed blob storage with Merkle roots published on Nostr, enabling git remote URLs like `htree://npub.../repo-name`
- **Espy on Shakespeare** - Color palette capture from photos, shared as Nostr events on the AI-powered app builder platform

### Payments & Wallet Connect

- **Alby NWC Developer Sandbox** - Hosted sandbox for testing NIP-47 integrations without real funds, with live request/response event observation
- **Mostro Mobile v1.2.0** - Built-in Lightning wallet through NWC integration; automatic hold invoice detection for sellers and invoice generation for buyers
- **Primal Android NWC Expansion** - 11 merged PRs adding dual wallet support, automatic service lifecycle, and connection routing by wallet type

### AI Agents on Nostr

- **NIP-XX: AI Agent Messages** - joelklabo's complete protocol with event kinds for prompts, responses, streaming, tool telemetry, errors, and capability discovery via kind 31340
- **NIP-AE: Agents** - pablof7z's agent identity kinds from TENEX: definitions, nudges for runtime capability control, and agent lessons
- **NIP-AD: MCP Server Announcements** - Announcing Model Context Protocol servers and skills on Nostr with NIP-22 comment support
- **Nostr MCP Server v3.0.0** - Social actions, relay list management, NIP-65 support, NIP-42 auth, and NIP-17/NIP-44 direct messaging for AI agents

### Relay & Infrastructure Releases

- **HAVEN v1.2.0-rc3** - Multi-npub support, cloud backup with `--from-cloud`/`--to-cloud` flags, Web of Trust double-counting fix
- **Citrine v2.0.0-pre1** - Android relay with optimized database indexes, per-app port assignment for hosted web apps
- **Granary v10.0** - Social web translation library switches Nostr IDs from bech32 to hex, adds NIP-27 mention parsing

### New Projects

- **Mapnolia** - Decentralized map tile distribution over Nostr using kind 34444 events with PMTiles chunks and Blossom server references
- **Pika** - MLS-encrypted messaging via Marmot protocol with Rust core and thin SwiftUI/Kotlin UI shells
- **Keep** - FROST threshold signing for Android using NIP-55 and NIP-46, with DKG ceremonies over Nostr relays
- **Prism** - Android share target for publishing text, URLs, images, and video to Nostr from any app

### Client Updates

- **Flotilla 1.6.4** - Push notifications via NIP-9a, wallet receive flow, classified listings, space URL support
- **Shosho v0.12.0** - Video Clips with in-player replies, custom emoji integration, QR profile sharing, horizontal playback mode
- **Aegis v0.3.8** - Multilingual UI, incremental update manager for built-in Nostr app browser, 5-minute key caching
- **SNSTR v0.3.1** - Package verification guards with CI enforcement on Node and Bun
- **Notedeck Android App Store Prep** - UGC compliance plan, NIP-56 reporting, Terms of Service, signed release APK/AAB generation
- **Nostria: Discovery Relays** - Auto-initialization of discovery relays for profile lookup, DM textarea and video fixes
- **Camelus: Riverpod v3 Migration** - API migration, generic feed refactor, embedded note cache

### NIP Updates

**Merged:**
- **NIP-85: Service Provider Discoverability** - Client discovery guidance for Trusted Assertions providers
- **NIP-11: Relay Information Cleanup** - Removed unused privacy_policy, retention, relay_countries, and community preferences
- **NIP-52: Day-Granularity Timestamp Tag** - Required `D` tag on time-based calendar events for efficient relay-side indexing
- **NIP-47: Simplification** - Removed `multi_pay_invoice` and `multi_pay_keysend`

**Open:**
- **NIP-74: Podcasts** - Heated discussion with at least three competing podcast standards
- **NIP-XX: AI Agent Messages** - Complete AI agent communication protocol
- **NIP-PNS: Private Note Storage** - jb55's deterministic pseudonymous keypair scheme, actively being implemented in Notedeck
- **NIP-AE: Agents** - Agent identity with definitions, nudges, and lessons
- **NIP-AD: MCP Server Announcements** - MCP server and skill discovery
- **NIP-73: OSM Tag Kind** - OpenStreetMap identifiers for NIP-73 External Content IDs
- **NIP-XX: Responsive Image Variants** - Resolution-aware image variants for NIP-94 file metadata

### NIP Deep Dives

- **NIP-85 (Trusted Assertions)** - Delegating expensive Web of Trust calculations to trusted service providers who publish signed results as standard Nostr events. Four event kinds for users, events, addressable events, and external identifiers. Provider discovery through kind 10040 declarations.
- **NIP-52 (Calendar Events)** - Date-based (kind 31922) and time-based (kind 31923) events with calendars, RSVPs, and the new `D` tag enabling relay-side temporal indexing. Design intentionally omits recurring events.

---

### Timestamps

00:00 Intro
00:22 Blossom Local Cache Layer Emerges
03:16 Alby NWC Developer Sandbox
04:48 AI Agent NIPs Arrive
08:21 HAVEN v1.2.0-rc3
09:50 Mostro Mobile v1.2.0: Built-In Lightning Wallet
10:58 Aerith v0.2
15:16 Mapnolia: Decentralized Map Tiles Over Nostr
19:26 Pika: Marmot-Based Encrypted Messaging
20:07 Keep: FROST Threshold Signing for Android
22:47 Prism: Share Anything to Nostr from Android
24:15 Hashtree: Content-Addressed Storage with Nostr Integration
25:23 Espy: Color Palette Capture on Shakespeare
25:47 Flotilla 1.6.4
27:04 Shosho v0.12.0
27:31 Granary v10.0
28:12 Nostr MCP Server v3.0.0
29:10 Aegis v0.3.8
29:03 SNSTR v0.3.1
30:29 Citrine v2.0.0-pre1
31:01 Primal Android: NWC Infrastructure Expansion
31:38 Notedeck: Android App Store Prep
32:21 Nostria: Discovery Relays and DM Fixes
33:28 Camelus: Riverpod v3 Migration
33:54 NIP-85: Service Provider Discoverability
34:29 NIP-11: Relay Information Cleanup
34:48 NIP-52: Day-Granularity Timestamp Tag
35:32 NIP-47: Simplification
35:59 NIP-74: Podcasts
36:27 NIP-XX: AI Agent Messages
36:45 NIP-PNS: Private Note Storage
37:37 NIP-AE: Agents
38:11 NIP-AD: MCP Server and Skill Announcements
38:27 NIP-73: OSM Tag Kind
38:59 NIP-XX: Responsive Image Variants
39:39 NIP Deep Dive: NIP-85 (Trusted Assertions)
50:49 NIP Deep Dive: NIP-52 (Calendar Events)]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #9</title>
      <description>Mostro ships its first public beta for P2P Bitcoin trading on mobile, Zapstore reaches 1.0 stable, and OpenSats renews funding for Minibits Wallet. NIP-45 gains HyperLogLog for approximate cross-relay event counting. Primal Android expands NWC infrastructure while Antiprimal bridges Primal&#39;s cache to standard Nostr protocols. A campaign to slim kind 0 metadata begins with identity tags moving to their own event kind. NIP-96 continues its deprecation as projects migrate to Blossom for content-addressed media hosting.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwde38ymrydfexcmrzwpdv3cxumpe8pa8z7qvpm54w</link>
      <pubDate>Tue, 24 Feb 2026 19:49:56 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1771962596618-dpnl98zqx</guid>
      <enclosure url="https://blossom.primal.net/fbe06d68714282a05c669396aa55ef57a8c34abb9020aed580f4a0e7de3a63bb.ogg " type="audio/ogg" length="0" />
      
      <itunes:duration>00:00</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/cae5f4e63f75634dd43873a41b7743ea44f3da8a8a2ddf8c2ee1d3e41beeb3c8.png" />
      
      
      <content:encoded><![CDATA[Mostro reaches public beta after three years of development, bringing peer-to-peer Bitcoin trading to mobile via Nostr. Lightning handles settlement while Nostr coordinates orders with no custodial intermediary. The app is available on Zapstore and GitHub.
Zapstore hits 1.0 stable, marking a milestone for Nostr's permissionless Android app distribution. The release includes better error handling, a new updates screen, and encrypted issue reporting via Nostr DMs.
OpenSats awards its sixteenth wave of Bitcoin grants. Minibits Wallet received a renewal for its Nostr-integrated Cashu wallet with NIP-60 support and nutzap integration.
Primal Android ships 18 PRs expanding NWC infrastructure with dual wallet support, audit logging, and the lookup_invoice method. This continues their wallet connectivity buildout from previous weeks.
Antiprimal launches as a standards-compliant gateway bridging Primal's proprietary cache to standard Nostr NIPs. The project enables any Nostr client to access Primal's event statistics, search, and Web of Trust calculations through standard protocol messages.
Kind 0 slimming begins with vitorpamplona's series of PRs extracting underused data from user metadata events. Identity tags moved to kind 10011, with proposals pending for NIP-05 verification and Lightning addresses.
NIP-45 gains HyperLogLog support, enabling approximate event counting across multiple relays. The 256-byte probabilistic data structure solves the deduplication problem for follower and reaction counts without requiring full event downloads.
The deep dive covers NIP-96's deprecation in favor of Blossom. While Angor v0.2.5 adds NIP-96 server configuration, ZSP v0.3.1 uploads exclusively to Blossom, illustrating a protocol transition underway.
Other releases include Coracle 0.6.29 with topics and highlight commenting, Igloo Desktop v1.0.3 with security hardening for threshold signing, Amber v4.1.2-pre1 migrating to Flow architecture, and NostrPress for converting Nostr profiles into static blogs.

00:05 Intro
00:20 Mostro Ships First Public Beta
01:11 OpenSats Sixteenth Wave of Bitcoin Grants
02:06 NostrPress: Nostr Profile to Static Blog
05:38 Antiprimal: Standards-Compliant Gateway to Primal’s Cache
09:02 Ikaros: AI Agent Messaging Gateway for Signal and Nostr
11:04 Kind 0 Slimming Campaign
15:02 NIP-70 Relay Support Critical for Encrypted Messaging Security
18:43 Releases
18:52 Coracle 0.6.29
19:15 Igloo Desktop v1.0.3
20:00 Amber v4.1.2-pre1
20:45 Mostro Mobile v1.1.0 and Daemon v0.16.1
22:20 Angor v0.2.5
34:16 Ridestr v0.2.2 and v0.2.3
44:03 Zapstore v1.0.0
51:48 ZSP v0.3.1
55:34 Nostr PHP 1.9.4
55:50 Damus iOS 1.17
56:12 nak v0.18.3
56:27 Mi: Browser-Based Local Relay
58:06 Agora v1.0.2
59:26 xonos v0.1.6
59:55 Project Updates
59:58 Primal Android Expands NWC Infrastructure
01:07:46 diVine Ships API-First Video Feeds
01:08:25 White Noise: Keyring Unification and User Search
01:09:35 Marmot TS Extracts Reference Chat App
01:11:44 Alby Hub Updates
01:11:56 Notedeck Ships Dashboard and Agentium
01:12:48 Agora Ships Major UI Overhaul
01:13:28 Clawstr Ships CLI and Lightning Zap Buttons
01:25:22 NIP Updates
01:25:27 Merged: NIP-45: HyperLogLog Relay Response - NIP-45 (Event Counting)
01:44:34 Merged: NIP-39: Identity Tags Moved from Kind 0 - NIP-39
01:45:40 Open PRs and Discussions
01:45:44 NIP-XX: Nostr Relay Connect (NRC)
01:46:39 Nostr Web Tokens (NWT)
01:53:50 NIP-47 Simplification
01:55:05 NIP-05: Move to Own Event Kind
01:55:21 NIP-57: Lightning Addresses from Kind 0
01:57:52 NIP Deep Dive: NIP-96 (HTTP File Storage) and the Transition to Blossom
02:13:22 Outro]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #8</title>
      <description>rust-nostr ships a sweeping SDK overhaul. New clients like Nostria, Frostr, and Vector raise the bar. NIP deep dives follow.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwde3xy6nvwfc8ymrxwfddgcn2vp5xd5r2dcrsa24c</link>
      <pubDate>Sun, 15 Feb 2026 12:03:09 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1771156989639-j15043h57</guid>
      <enclosure url="https://blossom.primal.net/ad85e46e66cad4d6e672e63573533cd67bbaea4206d8a4a6e5242af8bb53ca43.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:46:29</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/1ef8aeeb478df79c18b9e4032174e6e46e0f00bb113a92fc28e4c90db8eb29d9.png" />
      
      
      <content:encoded><![CDATA[This week on Nostr Compass: rust‑nostr ships a sweeping SDK redesign impacting core APIs. Nostria 3.0 launches with a complete UX overhaul while Vector pushes massive SIMD performance gains. Frostr arrives on iOS, marketplace and AI‑native social apps expand the ecosystem, and we explore new NIP proposals for podcasting, wallet workflows, local databases, and encrypted social models.

### Infrastructure and Ecosystem Growth

- **rust‑nostr SDK redesign** – 21 PR overhaul bringing consistency to client, relay, and signer APIs
- **Instagram → Nostr v2** – Content migration tooling lowering onboarding friction
- **Pod21** – Decentralized 3D printing marketplace coordinated via Nostr messaging
- **Clawstr** – AI‑agent moderated communities built on open protocol interaction

### App Releases

- **Ridestr v0.2.0** – Trusted driver networks and improved escrow reliability
- **Nostria 3.0** – Dual‑pane navigation, unified UI, advanced filtering and list management
- **Applesauce v5.1.0** – Signer controls, async loading utilities, and event mapping updates
- **NAK v0.18.3** – Stability hardening and CLI resilience improvements
- **Aegis v0.3.7** – Browser signing visibility and encryption tracking
- **BitChat v1.5.1** – Mesh security hardening and identity spoof prevention
- **KeyChat v1.39.2** – Adds NIP‑47 wallet connectivity
- **Nostrmo v3.5.0** – Flexible feed architecture and routing improvements
- **NosCall v0.5.0** – Contact groups and relay optimization for P2P calls
- **diVine 1.0.4** – Nostr key workflow testing and interoperability fixes
- **Frostr iOS** – Threshold signing distributed across Apple devices

### Client + Project Updates

- **Damus relay hints** – Cross‑relay discovery via NIP‑19 references
- **Primal Android** – Encrypted NWC wallet connectivity and export tooling
- **Marmot SDK** – Message persistence and retryable state handling
- **HAVEN relay** – Periodic Web‑of‑Trust refresh
- **nostr‑tools / NDK** – Reliability and parsing improvements
- **njump / Amethyst / Jumble / Formstr / Pollerama** – Gateway rendering, media uploads, encrypted forms, and DM poll sharing
- **Vector** – Massive SIMD acceleration and encrypted group messaging stack

### Protocols and NIPs

- **NIP‑47** – Hold invoices enabling escrow‑style payment flows
- **NIP‑05** – Explicit lowercase enforcement for identity validation
- **NIP‑73** – Country‑code geotagging
- **NIP‑82** – Cross‑platform software distribution standard
- **NIP‑74** – Podcast publishing event model
- **NIP‑FR** – Friends‑only encrypted note sharing
- **NIP‑DB** – Browser‑native local event database interface
- **TRUSTed Filters** – Delegated ranking and moderation infrastructure
- **NIP‑9a** – Relay‑driven push notifications
- **Catallax** – Escrowed decentralized contract work protocol
- **NIP‑59** – Gift‑wrap multi‑layer encryption for metadata privacy

---

### Timestamps

00:00 Nostr Development Updates  
00:19 rust-nostr Ships Major API Redesign  
02:00 Onboarding New Developers and Users  
04:28 Bridging Social Networks  
07:04 Community Building and User Engagement  
09:52 Marketplaces and NIP Protocols  
10:23 Pod21: Decentralized 3D Printing Network  
12:51 Clawstr: AI Agent Social Network  
17:22 Ridestr v0.2.0: RoadFlare Release  
18:31 Nostria v3.0  
24:28 Applesauce v5.1.0  
27:07 nostr army knife v0.18.3  
28:31 Aegis v0.3.7  
29:18 BitChat v1.5.1 (iOS)  
29:59 KeyChat v1.39.2  
30:19 Nostrmo v3.5.0  
31:49 Noscall v0.5.0  
32:30 diVine 1.0.4  
33:22 Frostr iOS Test Flight  
37:44 Damus New Implementation  
41:23 Marmot Protocol Typescript Implementation  
42:10 Amber integration on the Rust side  
43:53 Haven Update  
44:23 Nostr Tools  
48:41 Changes to njump  
49:01 Amethyst Fixes  
49:22 Jumble New Ability  
51:19 Formstr Update  
52:11 Security Enhancements in Nostr Applications  
52:47 Pollerama  
53:58 Nostrability Schemata  
56:23 Vector  
01:01:19 NIP Updates  
01:01:27 NIP-47: Hold Invoice Support  
01:03:54 NIP-05: Lowercase Requirement  
01:06:57 NIP-73: Country Codes  
01:07:27 NIP-82: Software Applications  
01:13:18 NIP-74: Podcasts  
01:15:16 NIP-FR: Friends-Only Notes  
01:19:51 NIP-DB: Browser Nostr Event Database Interface  
01:24:15 TRUSTed Filters  
01:24:50 NIP-9a: Push Notifications  
01:25:29 Catallax  
01:27:57 NIP Deep Dive: NIP-47 (Nostr Wallet Connect)  
01:33:46 NIP Deep Dive: NIP-59 (Gift Wrap)  
01:45:35 Outro]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #7</title>
      <description>Ridestr builds P2P ridesharing with Cashu escrow. Damus ships negentropy DM sync. Marmot merges MIP-03. Five years of Nostr Januaries reviewed.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwdesxgcnwvehxg6rsv3dvdjrw7rfwsurxeqmt2prp</link>
      <pubDate>Wed, 04 Feb 2026 15:02:52 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1770217372482-cd7xit83d</guid>
      <enclosure url="https://blossom.primal.net/e5a05d9413d4a9a15b2375bc2a93dec5b13bbe0c95c3d12662f3b6460ed00ba7.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:17:00</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      <itunes:image href="https://blossom.primal.net/b1b36e7831c740ba1b91e88cc5532a7d31ef82f9cde2f5498a005198e6d85b83.png" />
      <podcast:transcript url="https://blossom.primal.net/82daa00294af2bda132885feef9085c5daeb265c09ad15f9f8e0e65c5dbf8520" type="text/plain" />
      
      <content:encoded><![CDATA[This week on Nostr Compass: Ridestr launches decentralized ridesharing with Cashu and NIP-44. Pomade enables multisig key recovery via email and OTP. Damus ships negentropy-based DM syncing. Desktop clients like Amethyst and NoteDeck evolve, while Formstr, Shopstr, Jumble, and nostr-tools push upgrades. We explore major new NIPs for community keys, encrypted file sync, and sequence-based event indexing — then reflect on five years of Nostr’s growth.

### Infrastructure and Recovery

- **Ridestr** – A fully decentralized ridesharing app on Nostr using encrypted location disclosure and HTLC-based Cashu payments
- **Pomade** – A FROST-based multisig recovery protocol with email and password fallback, targeted at new users

### App Releases

- **Damus v1.13** – Adds negentropy for reliable DM syncing
- **Amber v4.1.1** – Displays relay trust scores
- **NAK v0.18.2** – Integrates Model Context Protocol for AI interactions
- **Zeus beta** – Adds NIP-87 mint reviews and NWC bugfixes
- **Camelus** – Ships full DM support for Android

### Client + Project Updates

- **Amethyst desktop** – Adds Zaps, Bookmarks, Thread view
- **NoteDeck** – NIP-52 calendar and UX polish
- **Jumble & Shopstr** – Adds community mode, orders dashboard
- **Formstr** – Grid questions and SDK improvements
- **nostr-tools** – Adopts @noble/curves v2.0.1

### Protocols and NIPs

- **NIP-CF** – Sequence-based sync for deterministic ordering
- **NIP-XX** – Encrypted file sync via kinds 30800–30802
- **Communikeys** – Community keys using npubs + kind 10222
- **Trusted Relay Assertions** – Global vs personalized trust scoring debate

---

### Timestamps

00:00 Intro  
00:51 Decentralized Ride Sharing with Ridestr  
06:16 Key Recovery with Pomade  
16:19 Damus v1.13  
17:55 Amber v4.1.1  
18:54 NAK v0.18.2  
20:01 Nostr Army Knife and AI Integration  
20:55 Project Updates: White Noise and Marmot Protocol  
26:08 Desktop Client Developments: Amethyst and NoteDeck  
28:41 Community Features in Jumble and Shopster  
32:13 Formster's New Features and Enhancements  
34:25 Nostr Tools  
36:12 Zeus Adds NIP-87  
38:05 Kamelos and Mobile Performance  
40:45 NIP Updates and Community Keys  
42:49 NIPCF and Event Indexing  
50:49 Encrypted File Synchronization  
53:06 January Reflections: Nostr's Evolution  
01:15:31 Final Thoughts and Future Directions]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #6</title>
      <description>Bitchat hardens with Rust, AI resurrects abandoned projects, relay trust gets standardized, quantum resistance debates continue, plus Amber, Zeus, Primal, and NostrDB updates.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwd3exucryd3j8yurqwfdx3a82de4vfaxsuqzeth8n</link>
      <pubDate>Thu, 29 Jan 2026 16:03:49 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1769702629809-4zu75bzhp</guid>
      <enclosure url="https://blossom.primal.net/f55d32533ebeb053d51674e0f9671c8bca9aae0f9768f6037627559e04b6bb53.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:24:45</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      
      
      
      <content:encoded><![CDATA[This week the builders explore Bitchat's transition from C to Rust for memory safety, the emerging role of AI in reviving abandoned Nostr projects, and the ongoing debate around quantum-resistant cryptography. The panel dives deep into relay trust mechanisms, NIP standards, and the latest client releases.

### Infrastructure & Security

- **Bitchat Rust Migration** - The transition from C Tor to Rust Arti brings memory safety to secure messaging, with significant mobile stability improvements
- **Digital Kevlar** - Discussion of hardened communication layers and what memory-safe code means for financial applications handling Cashu ecash

### AI in Development

- **AI-Assisted Maintenance** - How AI tools are changing software maintenance and upgrades across the ecosystem
- **Reviving Abandoned Projects** - JeffG discusses using AI to resurrect Listr after over a year of dormancy, touching every file in the codebase

### Protocol Updates

- **NIP-29 Clarifications** - Important clarification that relay keys use WebSocket URLs, not pubkeys like other NIPs
- **Trusted Relay Assertions** - New draft NIP building on NIP-66 for standardized relay trust scoring (0-100 scale)
- **The Trust Problem** - Extended discussion on who watches the watchers and the economics of relay reputation

### Post-Quantum Cryptography

- **Quantum Resistance in Nostr** - Current proposals for ML-DSA-44 and Falcon-512 signatures
- **Timeline Reality Check** - Google Willow has 105 qubits; breaking current crypto needs roughly 1 million
- **Crypto Agility** - Why the narrative matters as much as the implementation

### NIP Deep Dives

- **NIP Standards and Relay Information** - How NIP-11 and NIP-66 work together for relay discovery
- **New Architecture Patterns** - Building applications on top of the evolving protocol stack

### Client Releases

- **Amber v4.1.0 Pre-release v3** - Android signer updates
- **Zeus Pull Requests** - 17 merged PRs focusing on NIP-47 and Cashu improvements
- **Primal Android** - Wallet backup flows and NIP-92 media dimension support
- **White Noise & Marmot** - Privacy-preserving push notification developments

### Code Changes

- **NIP-3 Rework** - OpenTimestamps attestation improvements
- **NostrDB Streaming Queries** - Zero-allocation fold queries for relay performance
- **Damus Open PRs** - Current development focus

---

### Timestamps

00:00 Intro
00:45 BitChat's Transition to Rust Implementation
05:51 The Concept of Digital Kevlar in Communication
09:25 AI in Software Maintenance and Upgrades
10:25 Reviving Abandoned Projects with AI
17:33 NIP29 and Relay Key Clarifications
19:18 Trusted Relay Assertions on Top of NIP-66
22:37 The Role of Trust in Relay Assertions
38:33 Quantum Resistance Signatures in Nostr
44:47 Navigating Post-Quantum Concerns in Crypto
46:43 The Importance of Narrative in Crypto Agility
49:43 Deep Dive into NIP Standards and Relay Information
56:45 Building a New Architecture for Nostr Applications
01:00:17 Enhancements in Nostr Protocols and Applications
01:06:00 Amber v4.1.0 Pre-release v3
01:08:33 Zeus Pull Requests
01:09:43 Primal Android Upgrades
01:11:41 White Noise and Marmot Protocol
01:13:58 NIP-3 Rework
01:19:08 NostrDB Adds Support for Streaming Queries
01:21:23 Damus Open PRs
]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #5</title>
      <description>
Bitchat completes Cure53 security audit with 17+ PRs fixing critical findings. NIP-71 addressable video merged. Post-quantum cryptography NIP opens. Amethyst v1.05.0 ships bookmarks.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwd3exsenswfkxqcnvdpddcmxxatrxdk8ges74m02x</link>
      <pubDate>Mon, 26 Jan 2026 14:49:20 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1769438960164-n6cuc3ltf</guid>
      <enclosure url="https://blossom.primal.net/a184e517cdb2a9dc6c6a5d3784b93ed65f97e5c8c8fd5b6e7a2a4386d0700f4d.mp3" type="audio/mpeg" length="0" />
      
      <itunes:duration>00:00</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      
      
      
      <content:encoded><![CDATA[This week we cover Bitchat's security audit by Cure53, which found 12+ security issues including uncleared Diffie-Hellman secrets and signature verification gaps. The team responded with 17+ pull requests fixing forward secrecy, thread safety, and memory exhaustion vulnerabilities. NIP-71 merges bringing addressable video events with update-in-place metadata. A post-quantum cryptography NIP proposes ML-DSA-44 and Falcon-512 signatures with ML-KEM key agreement to protect against future quantum attacks. We also discuss the BOLT12 offers debate and the Audio Track NIP for standardizing music and podcast events. Our NIP deep dive covers NIP-51 bookmark lists and NIP-65 relay metadata, explaining how both use replaceable events for organizing content and connections. Amethyst v1.05.0 ships bookmark support, voice notes, Web of Trust scores, Quartz database migration, and an early desktop release. Nostur v1.25.3 improves NIP-17 DMs with reactions, replies, and NIP-46 remote signer support.

00:00 - Introduction to Nostr Compass Episode 5
01:01 - BitChat Security Audit Insights: Cure53 findings and 17+ PRs fixing DH secret clearing, signature verification, and thread safety
04:42 - NIP-71 Addressable Video Event: kinds 34235/34236 with updateable metadata via d tags
06:12 - Open PRs: Post-Quantum Cryptography proposal with ML-DSA-44, Falcon-512, and ML-KEM for quantum-resistant signing
18:25 - NIP-51 and NIP-65: Enhancing Usability through bookmark lists and relay metadata for organizing content and connections
22:30 - How to Handle Bolt 12 Offers for NIP-47 Nostr Wallet Connect: Community decision to create dedicated NIP for BOLT12 offers
26:03 - Audio Track NIP: Standardizing music (32100) and podcast (32101) events for interoperability across Wavlake, Zapstr, and Stemstr
42:16 - Amethyst Version 1.05 Release Highlights: Bookmarks, voice notes, Web of Trust scores, Quartz migration, desktop release
44:13 - Nostur v1.25.3: NIP-17 DM improvements with reactions and replies
45:11 - NIP-46 Remote Signer Support: Nostur and Primal iOS add bunker support for off-device key management
46:52 - Code and Documentation Changes: Citrine SQL injection fix, rust-nostr NIP-62 expansion, NDK subscription tracking, Damus iOS 17 crash fix
53:04 - Conclusion and Future Developments]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #4</title>
      <description>Primal Android becomes a signing hub with NIP-46 and NIP-55. Marmot hardens MLS after audit. Nostria 2.0 adds music and streaming.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwd3exsensd3cxucrvvfd89hxvum4vam8scgqzflzp</link>
      <pubDate>Mon, 26 Jan 2026 14:44:47 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1769438687061-9nfsugvxa</guid>
      <enclosure url="https://blossom.primal.net/bca37ae7299e057071afb80c79fd811cbecadcf966af356d68b007d9d4481969.mp3" type="audio/mpeg" length="0" />
      
      <itunes:duration>00:00</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      
      
      
      <content:encoded><![CDATA[This week we cover Primal Android's transformation into a signing hub with both NIP-46 remote signing and NIP-55 local signer support, letting other apps request signatures without touching private keys. The Marmot team addressed findings from a security audit with 18 merged PRs hardening their MLS-based encrypted messaging. Nostria 2.0 ships cross-platform with native music support, live streaming with Game API integration, and remote signer QR code connections. We also cover Nostrability's new relay hints tracker documenting client interoperability. Our NIP deep dive breaks down Nostr's encryption standards, explaining why NIP-04 has security flaws and how NIP-44 fixes them with ChaCha20-Poly1305 authenticated encryption.

Read the newsletter: https://nostrcompass.org/en/newsletters/2026-01-07-newsletter/

00:00 - Intro to Episode 4
00:49 - Primal Android 2.6.18: NIP-46 remote signing and NIP-55 local signer support for other Android apps
10:18 - Marmot Protocol security hardening: 18 PRs addressing audit findings including hash verification and pagination fixes
13:53 - Nostrability relay hints tracker: documenting client support for hint construction and consumption
18:11 - Nostria 2.0: music streaming with zap payments, live video with Game API, profile discovery, and remote signer QR codes
26:34 - NIP Updates: NIP-55 return field fix, NIP-50 query expression extensions proposal
32:27 - NIP Deep Dive: NIP-04 vs NIP-44 encryption, from AES-CBC flaws to ChaCha20-Poly1305 authenticated encryption
41:56 - Releases: Citrine v1.0, Applesauce v5.0, Mostro v0.15.6, Aegis v0.3.5]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #3</title>
      <description>Five years of Nostr Decembers: from fiatjaf&#39;s first client in 2020 to 2,500+ relays, 140+ clients, and a thriving global ecosystem.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwd3exsenwwfcxu6n2wpdd338xctvwe5kkdgp2v6xg</link>
      <pubDate>Mon, 26 Jan 2026 14:33:07 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1769437987558-lbsalvik5</guid>
      <enclosure url="https://blossom.primal.net/b2fe0827d48e466c7dec3b3583cd36278fd36c6a8f92f2b7bd7514917d5ae8b5.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:51:29</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      
      
      
      <content:encoded><![CDATA[Timestamps
00:00 Intro to Episode 3
00:48 HODL Invoice Escrows in Shopstr
03:51 The Historical Evolution of Nostr: December 2020
10:37 Nostr's Growth and Community Engagement: December 2021
16:49 Jack Dorsey's Impact on Nostr: December 2022
28:37 Nostr's Encryption Developments: December 2023
55:43 2024 Milestones
56:06 Funding and Growth in the Nostr Ecosystem: December 2025
57:52 NIP Protocol Developments and Innovations
59:27 Reflecting on Five Years of Nostr
01:00:59 Exploring B2B Use Cases and Post-Quantum Algorithms
01:02:27 Amethyst Building a Desktop App in the Shadows
01:03:34 Voice Messaging Features and Adoption
01:06:06 Direct Messaging and New App Features
01:07:15 Local Relays and Offline Functionality
01:11:38 Data Resilience and Synchronization
01:14:31 Nostr as an Address Space
01:20:28 Developer Tools and Ecosystem Growth
01:22:59 NIP Updates
01:24:49 ZapStore and App Distribution Improvements
01:26:32 Messaging Innovations and Integration
01:28:12 Infrastructure Projects and Command Line Utilities
01:30:21 Security Audits and Best Practices
01:43:41 White Noise Media Updates
01:44:37 npub.cash
01:46:23 Nostr Java Library v1.1.1

Show Notes
Introduction
Episode 3 of the Nostr Compass Podcast celebrates five years of Nostr development with a comprehensive retrospective of December milestones from 2020 through 2025.

Featured Topics
HODL Invoice Escrows in Shopstr
Shopstr's new trust-minimized payment system for physical goods using HODL invoices. The architecture locks buyer funds in their own wallet using Alby's makeHoldInvoice, with settlement triggered only after merchant inventory verification. The handshake flows through NIP-17 encrypted DMs with multi-merchant cart support.

Five Years of Nostr Decembers
December 2020: Genesis

fiatjaf releases Branle, the protocol's first client

One or two experimental relays serve early adopters

The Telegram group @nostr_protocol launches

Core architecture established: secp256k1 public keys, signed posts, dumb relay storage

December 2021: Early Development

Nostr hits the Hacker News front page (110 points, 138 comments)

Network runs on approximately seven relays with fewer than 1,000 users

Branle receives private key import and multi-relay support

Command-line client noscl provides terminal-based interaction

December 2022: The Tipping Point

Jack Dorsey donates 14.17171699 BTC (~$245,000-$250,000)

Twitter suspends journalists, announces bans on Nostr/Mastodon promotion

NIP-19 merged, introducing bech32-encoded identifiers (npub, nsec, note)

Client proliferation: Damus, Astral, Snort, Amethyst development begins

36+ commits to NIPs repository

December 2023: Ecosystem Maturation

NIP-44 revision 3 merged after Cure53 security audit (10 issues found)

ChaCha20 and HMAC-SHA256 replace flawed NIP-04 encryption

OpenSats fourth wave of grants funds Lume, noStrudel, ZapThreads

Nostr Wallet Connect v0.4.1 extends NIP-47 methods

jb55 posts that 2024 may be "the last year of Damus"

December 2024: Protocol Advancement

Notedeck Alpha launches (Rust-based desktop client)

OpenSats ninth wave funds AlgoRelay, Pokey, Nostr Safebox, LumiLumi

Gossip 0.13.0 lands with NIP-92/NIP-94 support, Blossom integration

30 pull requests submitted (10 merged)

224,000+ daily trusted pubkey events, 4x YoY growth

December 2025: Ecosystem Expansion

OpenSats fourteenth wave funds YakiHonne, Quartz, Nostr Feedz

NIP-BE (Bluetooth Low Energy) enables offline device sync

NIP-A4 (Public Messages) and NIP-29 clarifications merged

Primal Android becomes full NIP-55 signer

NDK achieves 162x faster cache queries

Current Developments
Amethyst Desktop Module
PR #1625 creates a full :desktopApp module using Compose Multiplatform, with login and global feed screens functional. The architecture converts :commons to Kotlin Multiplatform, enabling shared UI between Android and desktop while laying foundation for iOS.

Voice Messaging Features
PR #1622 adds dedicated voice reply screens with waveform visualization, re-record support, media server selection, and upload progress indicators.

Direct Messaging and New App Features
Notedeck gains messaging in PR #1223, expanding beyond timeline browsing into direct communication.

Local Relays and Offline Functionality
Citrine can now host web applications, turning phones into local-first Nostr web servers. Automatic reconnection and event broadcasting when network connectivity returns.

Data Resilience and Synchronization
Discussion of patterns for maintaining data integrity across distributed relay networks.

Nostr as an Address Space
Exploration of Nostr's identity and addressing model beyond social applications.

Developer Tools and Ecosystem Growth
The Nostrability Developer Toolkit Registry maintains a curated list of SDKs and libraries across TypeScript, Rust, Python, Go, Dart, Swift, and more.

NIP Updates
NIP-54 - Critical internationalization fix for wiki d-tag normalization, preserving UTF-8 letters for Japanese, Chinese, Arabic, Cyrillic, and other scripts

NIP-54 Djot migration - Proposal to switch wiki content format from Asciidoc to Djot

NIP-XX Quorum - Threshold multi-signature governance using FROST signatures

Releases and Tools
ZapStore 1.0-rc1
Complete UI refresh, rewritten package manager, App Stacks for curated discovery, background update checking, infinite scrolling.

Messaging Innovations
KeyChat v1.38.1 adds UnifiedPush support for Android and Linux push notifications, plus biometric authentication.

Infrastructure Projects
nak v0.17.4 - CLI tool update with Blossom mirror functionality

Mostro v0.15.6 - Dev fee audit events through kind 8383 Nostr events

Security Audits and Best Practices
Discussion of security patterns across the ecosystem: Marmot audit findings, Applesauce signature verification by default, proper key handling.

White Noise Media Updates
Media upload retry options, profile edit warnings, and race condition fixes in whitenoise-rs.

npub.cash
v3 rewrite migrates to Bun, adds SQLite support, implements LUD-21, and adds realtime mint quote updates.

Nostr Java Library v1.1.1
WebSocket handling refactors and improved test robustness.

Links
Newsletter #3: https://nostrcompass.org/en/newsletters/2025-12-31-newsletter/

Shopstr HODL Escrow: https://github.com/shopstr-eng/shopstr/pull/217

Amethyst Desktop: https://github.com/vitorpamplona/amethyst/pull/1625

Amethyst Voice Replies: https://github.com/vitorpamplona/amethyst/pull/1622

Notedeck Messaging: https://github.com/damus-io/notedeck/pull/1223

Citrine Web Apps: https://github.com/greenart7c3/Citrine/pull/81

Nostrability Toolkit: https://github.com/nostrability/nostrability/issues/264

ZapStore 1.0-rc1: https://github.com/zapstore/zapstore/releases/tag/1.0-rc1

KeyChat v1.38.1: https://github.com/keychat-io/keychat-app/releases/tag/v1.38.1%2B6489

nak v0.17.4: https://github.com/fiatjaf/nak/releases/tag/v0.17.4

npub.cash v3: https://github.com/cashubtc/npubcash-server/pull/40

nostr-java v1.1.1: https://github.com/tcheeric/nostr-java/releases/tag/v1.1.1

NIP-54 fix: https://github.com/nostr-protocol/nips/pull/2177]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #2</title>
      <description>Episode 2: NIP-55 Signers, Zapsnags, and the Social Graph</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwd3exsenwvf58ycrwvfdwekrvvmt0pkrqcsc4y92d</link>
      <pubDate>Mon, 26 Jan 2026 14:19:09 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1769437149071-vl63kxl0b</guid>
      <enclosure url="https://blossom.primal.net/e99e56f8375773124281450b78eb79c5f4c68ba34c5172fa964681ec2ab09efc.mp3" type="audio/mpeg" length="0" />
      
      <itunes:duration>47:33</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      
      
      
      <content:encoded><![CDATA[This week we dig into the growing NIP-55 signer ecosystem as Primal Android ships eight PRs to become a full local signer alongside Amber and Aegis. Shopstr's new Zapsnags feature turns your social feed into a flash sale marketplace—one zap and you've bought it. Mostro tackles the sustainability question with an opt-in development fund that lets relay operators contribute a percentage of trading fees. On the library side, NDK fixed a duplicate write bug that was adding 3.6 seconds to app boot, cutting cache queries from 3,690ms to 22ms. We walk through NIP-02 and NIP-10—the specs that make follow lists and threaded conversations work—and close with a discussion on Tenex's RAL architecture for coordinating AI agents over Nostr.

Read the Newsletter: https://nostrcompass.org/en/newsletters/2025-12-24-newsletter/

Guests: Vitor, Javier, Negrunch, Hzrd, Max

Timestamps
00:00 - Intro
00:28 - Primal Android becomes a full NIP-55 signer (8 merged PRs, LocalSignerContentProvider, joins Amber/Aegis)
04:01 - Shopstr Zapsnags: flash sales via Lightning (single-zap purchases from social feed, NIP-57 + NIP-17 gift wrapping)
06:22 - Mostro Development Fund (configurable dev fees, 10-100% of trading fee, opt-in sustainability model)
08:46 - NIPs Repository Updates (NIP-A4 public messages, NIP-29 group privacy, NIP-51 picture sets, NIP-55 clarification)
13:51 - Zeus v0.12.0 NWC overhaul (full NIP-47 service, custom relay support, budget tracking)
14:24 - Amber v4.0.6 (performance caching, retry logic, crash fixes)
14:51 - nak v0.17.3 (LMDB Linux restriction fix)
15:07 - Aegis v0.3.4 (nostrsigner: URI support, local relay import/export)
16:22 - Damus code changes (mute list persistence fix, profile stream timing optimization)
16:52 - White Noise real-time message streaming (ChatStreamNotifier replaces polling, get_chat_list API)
18:12 - MDK performance improvements
20:12 - rust-nostr updates (multi-filter REQ restored, relay provenance, RUSTSEC-2024-0421 fix)
20:42 - Applesauce library (reactions system, user groups, NIP-60 wallet support)
22:22 - Tenex updates (RAL architecture for AI agent delegation)
23:17 - Exploring multi-agent systems on Nostr
24:13 - Mostro Development Fund deep dive (transparency, operator economics, sustainability)
31:21 - NIP Deep Dives: NIP-02 (follow lists) and NIP-10 (reply threading)
46:19 - Outro
]]></content:encoded>
      
    </item>
    <item>
      <title>Nostr Compass #1</title>
      <description>Builders break down Nostr Compass #1: NIP-BE, Marmot Protocol, Blossom, Shopster, plus client updates from Amethyst, Damus, Notedeck, Zeus, and more.</description>
      <link>https://podcast.nostrcompass.org/naddr1qvzqqqr4vcpzqa6e2nmnzsgjfzdy520vdy4hywr06c9ue6crpr2zxyq749uu275qqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqp7etsd9ek7er995cnwd3exsen2vfn8qcn2ded0qckcmm8w3j8v7sdcghha</link>
      <pubDate>Mon, 26 Jan 2026 13:45:38 GMT</pubDate>
      <guid isPermaLink="false">775954f7314112489a4a29ec692b72386fd60bcceb0308d423101ea979c57a80:episode-1769435138157-x1logtdvz</guid>
      <enclosure url="https://blossom.primal.net/24df160d686899425b1c03abff256817bc2e5bf4f491c61285cc7842a5aecee7.ogg" type="audio/ogg" length="0" />
      
      <itunes:duration>01:18:58</itunes:duration>
      <itunes:explicit>no</itunes:explicit>
      
      
      
      <content:encoded><![CDATA[The first episode of the Nostr Compass podcast review. The builders mentioned in the newsletter sit down to walk through the latest protocol developments, client releases, and infrastructure improvements shaping the Nostr ecosystem.

This episode covers NIP-BE bringing Bluetooth mesh networking to Nostr, the Marmot Protocol solving private push notifications, BUD-10 Blossom for decentralized file storage, and Shopster pushing e-commerce forward. Plus updates from Amethyst, Damus, Notedeck, White Noise, Coracle, Zeus, and more.

Whether you're building on Nostr or just want to understand what's happening under the hood, this is your guided tour through newsletter #1.

Read the newsletter: [Nostr Compass #1](https://nostrcompass.org/en/newsletters/2025-12-17-newsletter/)

Getting Started
00:00 Introduction to Nostr Compass
01:17 What is Nostr?

Protocol Updates
03:06 NIP-BE - Bluetooth Low Energy Support
08:38 Marmot Protocol - Privacy-Preserving Push Notifications
10:47 BUD-10 Blossom - Decentralized File Storage
13:37 Shopster - E-commerce on Nostr
18:33 Paywall and Premium Content Standards

NIP Deep Dives
23:44 NIP-24
24:03 NIP-69
24:54 NIP-59
26:44 NIP-51

Client & Relay Updates
28:16 Client and Relay Infrastructure Overview
34:01 Amber v4
34:39 Coracle v0.6.28
36:36 Flotilla - Development and Challenges
38:06 Damus and Notedeck
39:33 Nostr Army Knife
40:04 White Noise
40:49 Amethyst v1.04.2
43:09 Quartz - Multiplatform Migrations
44:14 Mostro v15.5
44:36 NosFlare v8.9.26
45:01 NosCall v0.4.1
45:26 Gitplaza v0.25
47:03 Primal Android
47:40 ZEUS Nostr Wallet Connect
48:01 Zeus Wallet Innovations

For Builders
50:16 Developer Best Practices - Security and Reliability
55:07 Understanding NIP-1 - The Basic Protocol
01:09:31 NIP-19 - Bech32 Encoded Identifiers

01:16:01 Outro]]></content:encoded>
      
    </item>
  </channel>
</rss>