From 2c470b2bb6c001e929fa33e9667fefb02f28f8fb Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 5 Jan 2026 16:55:53 +0000 Subject: [PATCH] feat: add permissions to NIP-46 connection URI for Amber compatibility - Include explicit permission list in nostrconnect:// URI - Request signing permissions for common event kinds (notes, reactions, zaps, etc.) - Request NIP-04 and NIP-44 encryption/decryption permissions - Improves compatibility with Amber and other NIP-46 signers - Follows NIP-46 specification for permission grants --- src/components/LoginDialog.tsx | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/components/LoginDialog.tsx b/src/components/LoginDialog.tsx index d051ed3..11c0d28 100644 --- a/src/components/LoginDialog.tsx +++ b/src/components/LoginDialog.tsx @@ -54,10 +54,25 @@ export default function LoginDialog({ open, onOpenChange }: LoginDialogProps) { await signer.open(); - // Generate nostrconnect:// URI with app metadata + // Generate nostrconnect:// URI with app metadata and permissions const uri = signer.getNostrConnectURI({ name: "Grimoire", url: window.location.origin, + permissions: [ + "sign_event:1", // Short text notes + "sign_event:3", // Contact list + "sign_event:6", // Reposts + "sign_event:7", // Reactions + "sign_event:1984", // Reporting + "sign_event:9734", // Zap requests + "sign_event:9735", // Zap receipts + "sign_event:10002", // Relay list + "sign_event:30023", // Long-form content + "nip04_encrypt", + "nip04_decrypt", + "nip44_encrypt", + "nip44_decrypt", + ], }); setNostrConnectUri(uri);