Install
openclaw skills install photo-alchemyTransform any photo into surrealist AI art. Uses Claude to write a story about your photo, then Gemini generates a reimagined version in one of 35+ visual styles. Deep Apple Photos integration — pick from albums, save back, schedule as an Apple TV screensaver.
openclaw skills install photo-alchemyTransform any photo into surrealist AI art via a two-step pipeline:
Built by Harold Martin. Installable via uvx — no setup required beyond API keys.
ANTHROPIC_API_KEY)GEMINI_API_KEY)uvx imagemine path/to/photo.jpg
curl -LsSf uvx.sh/imagemine/install.sh | sh
Keys are resolved in order: SQLite DB → env vars → interactive prompt (saved to DB on first entry).
# Via environment
export ANTHROPIC_API_KEY=***
export GEMINI_API_KEY=***
# Or via interactive config wizard (saves to ~/.imagemine.db)
imagemine --config
# Transform a single photo
imagemine photo.jpg
# Pick a random photo from a macOS Photos album
imagemine --input-album "Camera Roll"
# Save output to a specific directory
imagemine photo.jpg --output-dir ~/Desktop/output
# Use a specific visual style instead of random
imagemine photo.jpg --style "Ukiyo-e woodblock print, bold outlines, flat color"
# Tune creativity (default 1.0 for both)
imagemine photo.jpg --desc-temp 1.5 --img-temp 0.8
# Pick style interactively from a numbered table
imagemine photo.jpg --choose-style
# Blend multiple styles (enter comma-separated numbers)
imagemine photo.jpg --choose-style # then enter: 1,5,12
# JSON output (for scripting)
imagemine photo.jpg --json
# Show recent run history with timing sparklines
imagemine --history
35+ built-in styles including: Watercolor, 8-Bit Pixel Art, Ukiyo-e Woodblock, Neon Noir, Tarot Card, Vaporwave, Glitch Art, Renaissance Painting, and more.
imagemine --list-styles # show all styles with usage count
imagemine --add-style # add a custom style interactively
imagemine --remove-style # remove styles interactively
imagemine reads face-detection names from Photos albums and uses them in prompts. Use character mappings to rename people before they reach the AI (e.g. "John" → "Captain America").
# Pick input from album, save generated image back to another album
imagemine --input-album "Camera Roll" --destination-album "AI Art"
# Manage character name mappings
imagemine --add-character-mapping
imagemine --list-character-mappings
imagemine --remove-character-mapping
Run photo-alchemy on a schedule to continuously generate new art into a shared Photos album, then set that album as your Apple TV screensaver for a living, ever-changing art display.
imagemine --config
# Set INPUT_ALBUM and DESTINATION_ALBUM
imagemine --launchd 30
# Writes ~/Library/LaunchAgents/imagemine.plist and prints the launchctl command
launchctl load ~/Library/LaunchAgents/imagemine.plist
--config-path if you want a non-default DB location with launchd| Key | Default | Description |
|---|---|---|
ANTHROPIC_API_KEY | — | Claude API key |
GEMINI_API_KEY | — | Gemini API key |
CLAUDE_MODEL | claude-sonnet-4-6 | Claude model for story/prompt generation |
GEMINI_MODEL | gemini-3-pro-image-preview | Gemini model for image generation |
DEFAULT_DESC_TEMP | 1.0 | Claude sampling temperature |
DEFAULT_IMG_TEMP | 1.0 | Gemini sampling temperature |
INPUT_ALBUM | — | macOS Photos album to pick input from |
DESTINATION_ALBUM | — | macOS Photos album to save output to |
ASPECT_RATIO | 4:3 | Output image aspect ratio (1:1, 3:4, 4:3, 9:16, 16:9) |
--style)~/.imagemine.db (SQLite)Every run is recorded in ~/.imagemine.db with input path, generated story, style used,
model names, per-step timing (ms), and output path.
imagemine --history # show recent runs with timing sparklines
imagemine --config-path ~/custom.db # use a different DB location
--fresh picks from least-used styles (good for variety over time)--session-svg saves a styled SVG of the terminal session alongside the output image