aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/nip07.ts8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/lib/nip07.ts b/src/lib/nip07.ts
index be3f42e2..e90d13a7 100644
--- a/src/lib/nip07.ts
+++ b/src/lib/nip07.ts
@@ -42,6 +42,14 @@ export const ensureSigner = async (userPubkey: string): Promise<Uint8Array | nul
const skFromStorage = await tryNsecFromStorage();
if (skFromStorage) return skFromStorage;
+ // Try to derive nostr key from cached canonical key (e.g. passkey accounts)
+ try {
+ const { autoUnlockNostr } = await import("$lib/seed");
+ await autoUnlockNostr(userPubkey);
+ const skFromDerived = await tryNsecFromStorage();
+ if (skFromDerived) return skFromDerived;
+ } catch {}
+
// Fall back to NIP-07 extension if available and matches user
if (window.nostr) {
try {