What problem does it solve? Sending status updates, CI results, or bot replies through tools like ntfy.sh exposes plaintext on public topics. This Skill builds GUPT bots with gupt-sdk so messages travel as end-to-end encrypted Kind-4 DMs over user-chosen relays, readable only by the recipient's key. ## Core Features & Use Cases - Encrypted notifications: Push CI, backup, deploy, or agent status directly to a GUPT account as an encrypted DM, replacing ntfy.sh plaintext topics. - Interactive bots: Listen for inbound DMs with onMessage and reply with text or AES-256-GCM encrypted files via ctx.reply and ctx.replyFile. - Public bot directory: Publish a Kind-1 gupt-bot listing with publicBot metadata so the bot appears under Talk to bot in the GUPT app. - Use Case: A backup script finishes on a home server; a GuptBot with a dedicated keypair calls bot.reply(process.env.GUPT_USER_PUBKEY, "Backup completed successfully") and only the account owner can decrypt it. ## Quick Start Install gupt-sdk with npm, set GUPT_BOT_KEY and GUPT_USER_PUBKEY environment variables with at least two shared wss relays, then start a GuptBot and call reply to send an encrypted message to the recipient's public key.