Clave build 71 just hit external TestFlight.
Two things to know:
1. On iOS, prefer bunker:// if your client is on the same iPhone as Clave. Same-device nostrconnect:// is supported but fragile — iOS suspends the client's WebSocket when you switch between apps, breaking the handshake. Bunker pairing avoids the whole problem (it goes through Clave's primary relay via APNs and doesn't care about foreground state).
If you do use same-device nostrconnect, build 71 fixes the misleading "Stay in Clave" copy — the new prompt tells you to switch back to your client app, which keeps its WebSocket alive long enough to receive the response.
2. Bunker connection cap is now actually enforced. Was bypassable due to a timing bug — closed at all three layers in this build. Thanks to the tester who reported it.
Plus a sizable refactor under the hood (~2,000 LOC of AppState.swift split into focused files; same behavior, much easier to reason about going forward).
Find a bug? DM me.
Clave social post — Option B (narrative, for client devs)
New Clave build out on external TestFlight. Two things worth flagging for anyone shipping NIP-46 in a client:
Same-device iOS pairing: recommend bunker://, not nostrconnect://. When the user taps Approve in Clave, the client app loses foreground and iOS suspends its WebSocket within seconds. The connect-response Clave publishes goes to a closed connection. Bunker pairing routes through wss://relay.powr.build/ (Clave's primary sub) via APNs, so foreground state doesn't matter.
If your client wants to support nostrconnect:// on iOS anyway, two things help:
Include wss://relay.powr.build/ in your URI's relay set — the proxy's primary subscription catches signing requests there regardless of client foreground state
Don't show the user "stay in the signer for a few seconds" — they need to switch back to your app for the WebSocket to stay alive
Documented end-to-end at
Beyond that: build 71 also closes a bunker pair-cap bypass and ships an ~85% reduction in AppState.swift size from a behavior-preserving refactor.

GitHub
clave/docs/nip46-compatibility.md at main · DocNR/clave
Push-based iOS NIP-46 Nostr remote signer. Wakes a Notification Service Extension via APNs to sign events in the background. - DocNR/clave
Join the Clave - Nostr Signer beta
Available on iOS
