For AI Agents & Developers

This page describes how to use Stegstr programmatically: from the command line (CLI) or by understanding its capabilities and payload format. It is intended for AI agents (e.g. Claude, Cloudbot), scripts, and developers.

Capabilities

CLI: build and commands

Full CLI docs: Command-line interface (CLI). Summary below.

Build the CLI

git clone https://github.com/brunkstr/Stegstr.git
cd Stegstr/src-tauri
cargo build --release --bin stegstr-cli

Binary: target/release/stegstr-cli (Windows: stegstr-cli.exe). Requires Rust (latest stable).

Commands (copy-paste)

stegstr-cli decode IMAGE.png

Raw payload to stdout. Add --decrypt to decrypt and print bundle JSON.

stegstr-cli detect IMAGE.png

Decode + decrypt; print bundle JSON (same as decode --decrypt).

stegstr-cli embed COVER.png -o OUT.png --payload @bundle.json --encrypt

Embed payload from file; --encrypt uses app key so any Stegstr user can detect.

stegstr-cli post "MESSAGE" --output bundle.json

Create kind 1 note (content gets " Sent by Stegstr." suffix). Optional --privkey-hex HEX64.

Payload format

Raw layer (what is embedded in the image):

Decrypted payload (from the desktop app) is UTF-8 JSON:

{ "version": 1, "events": [ ... ] }

events are Nostr-style events (kind 1 notes, kind 4 DMs, kind 0 profiles, etc.). A JSON Schema for the bundle is in the repo. See How It Works for encryption (open vs recipients) and the full Detect/Embed flow.

Image format

PNG only (lossless). JPEG or other lossy formats will corrupt the hidden data.

Discovery

AI agents can discover Stegstr via:

Links

How It Works · FAQ · GitHub · Getting Started · Downloads