hey @hodlbod - I’m running #clave with strfry for my nip-46 bunker traffic — works really well. thinking about zooid though bc i want to spin up a nip-29 group to replace the signal channel we use for tester coordination.
few things before i deploy:
is zooid solid for nip-46 transport too? specifically kind:24133 with the proxy doing #p-filtered REQs.
Is event size configurable? I bumped strfry to 512KB because nip-46 wraps containing a kind:3 contact list for users with 700+ can be large.
Would I setup a zooid instance hosting both a nip-29 virtual relay for the testing group AND a groups-disabled one for general bunker traffic? Just brainstorming the architecture - would be cool to make the project as Nostr native as i can.
⚡️ᗪㄖ匚⚡️
doc@primal.net
npub1xy54...3urc
@NostReport | Physician | Bitcoiner | #plebchain | #docchain
Think about it, do it.
iOS has been a weak spot for Nostr key safety. Building Clave to fix that — a NIP-46 signer so you can stop risking your nsec with every app that pops up in your feed.
Need testers who’ll test and give some feedback, not just installs. Jump in our Signal group and/or DM me and I’ll send a TestFlight invite:
Use a throwaway nsec for now. #clave


Signal Messenger Group
Follow this link to join a group on Signal Messenger.

I just played ALIAS for 6 points in #WordsWithZaps.
It's your turn, @The Daniel 🖖!


Words With Zaps
A word game with Bitcoin Lightning zaps on Nostr
I just played SEIZE for 69 points in #WordsWithZaps.
It's your turn, @The Daniel 🖖!


Words With Zaps
A word game with Bitcoin Lightning zaps on Nostr
Some reverse seared ribeye and bistro cut 🧑🍳


Took some time off from Nostr and when I came back was surprised that there were still no great options for iOS signers 😞 Android’s had Amber forever. iOS users are stuck raw dogging their nsec or using throwaways, and you never get the full PWA experience because NIP-07 doesn’t work in PWA mode. With all the vibe coding going on, iOS users are not getting the full experience.
The reason why a signer doesn’t exist for iOS is that iOS kills backgrounded apps fast, so the usual “signer stays connected” approach doesn’t work. Workarounds like silent audio tracks keep the app alive but are fragile and will probably get flagged by App Store review eventually.
I’ve been working on a native iOS signer called Clave to fix this. APNs push wakes a Notification Service Extension for ~30s, which signs with the nsec in the Keychain and goes back to sleep. Key never leaves the device. Push proxy is content-free — can’t read requests, can’t sign anything.
What works:
• bunker:// and nostrconnect:// pairing (tested on some clients, works great with @YakiHonne and @Nostur
• Per-client trust levels with per-kind overrides
• Full NIP-46 method set (sign_event, nip04/44 encrypt/decrypt, etc)
Heads up: push IS the signer, so notifications can’t be turned off — but I’ve routed them quietly to notification center, no banner spam for every auth.
I’m looking for some help at this point.
Testers. Use it, break it, tell me what’s confusing and which clients it chokes on.
Security review. Custom NIP-44 v2 on CryptoKit + swift-secp256k1. Worth being upfront: I’m not a cryptographer. I used Claude to implement to spec and tested against known vectors, but I want real eyes on it before people trust this with real keys. If you know NIP-44, NIP-46, or iOS Keychain/NSE — please look at Shared/LightCrypto.swift, LightSigner.swift, and the proxy registration flow.
Contributors. MIT. Known gaps: multi-relay bunker (proxy only subs to one relay, so bunker clients are pinned to relay.powr.build), self-hosting docs, more client testing.
Use a throwaway nsec only for now. Don’t be a hero.
Reply or DM if you’re interested in helping for a TestFlight invite — keeping it tight for now so I can make sure the proxy can scale appropriately. Drop in, poke at it, break things, fix them.
GitHub
GitHub - DocNR/clave: Push-based iOS NIP-46 Nostr remote signer. Wakes a Notification Service Extension via APNs to sign events in the background.
Push-based iOS NIP-46 Nostr remote signer. Wakes a Notification Service Extension via APNs to sign events in the background. - DocNR/clave