Why images are extracted
Claude Code may store pasted images as base64 directly inside a session record. Keeping every encoded payload inside the MongoDB transcript would make documents large and slow to send to the browser. InstaShare detects supported image blocks, uploads the decoded bytes to Azure Blob Storage, and rewrites the record to reference the blob URL.
Blob names are derived from a SHA-256 content hash, so identical image bytes map to the same stored name. The public viewer lazy-loads images and constrains their display size while preserving access to the full asset.
Images have a different privacy boundary
Image blobs are publicly readable assets referenced by the share page. They may also be cached by browsers or intermediary infrastructure. Deleting a share requests deletion of its recorded image blobs, but copies already downloaded or retained in caches may not disappear immediately.
The text redaction patterns do not inspect pixels. A screenshot containing a password, API key, customer record, private message, or personal information can be uploaded unchanged.
Supported formats and fallbacks
PNG, JPEG, WebP, and GIF receive conventional file extensions and content types. If extraction fails, the server leaves the original base64 block in the transcript so the viewer can attempt a data-URL fallback instead of silently discarding the image.