From nostr
Encode and decode NIP-19 bech32 Nostr entities (note1, npub1, nevent1, nprofile1, naddr1). Use when the user provides a bech32 string and wants to extract the event ID, pubkey, or relay hints, or wants to encode a hex ID/pubkey into a bech32 string.
npx claudepluginhub cameri/claude-skills --plugin nostrThis skill uses the workspace's default tool permissions.
<objective>
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Generates or updates index.md listing all files and subdirectories in a target folder with 3-10 word descriptions from file contents. Use for indexing documentation directories.
Call nip19_decode with the bech32 string:
nip19_decode(bech32: "nevent1qqsp...")
Returns { type, data } where data depends on type:
note → hex event ID stringnpub → hex pubkey stringnevent → { id, relays?, author?, kind? }nprofile → { pubkey, relays? }naddr → { identifier, pubkey, kind, relays? }Present the decoded fields clearly. For nevent1, highlight the id (hex event ID) and any relay hints.
Call nip19_encode with the type and data:
nip19_encode(type: "nevent", data: { id: "abc123...", relays: ["wss://relay.damus.io"] })
nip19_encode(type: "npub", data: "hexpubkey...")
nip19_encode(type: "note", data: "hexeventid...")
</process>
<success_criteria> Decoded: present all fields from the bech32 payload. For nevent1/nprofile1, surface the relay hints — they tell you where to fetch the event/profile. Encoded: return the bech32 string ready to share. </success_criteria>