A Rust-based tool that automatically renames screenshots and images using OpenAI's GPT-4 Vision API. The tool analyzes image content and generates descriptive, meaningful filenames following a consistent naming convention.
- Automatic Image Analysis: Uses GPT-4 Vision API for intelligent content recognition
- Universal Image Renaming: Rename any image file, not just screenshots
- Bulk Rename Existing Screenshots: Retroactively rename all your existing screenshots with AI-powered intelligent naming
- Auto-Start on Boot: Automatically starts when your machine restarts via LaunchD integration
- Raycast Integration: Native Raycast app for lightning-fast screenshot management
- Intelligent Context Recognition: Detects screenshots, album covers, artwork, posters, UI elements
- Consistent Filename Formatting: Lowercase, hyphen-separated naming convention
- Real-time File Monitoring: Automatic renaming as you take screenshots
- Configurable Naming Rules: Customizable prompt templates for naming preferences
- OpenAI API key with access to GPT-4 Vision API
Note: Peeksy will prompt you to enter OpenApi key them during first run. The values will be automatically saved for future use.
v2.0 launched recently, read here
brew remove peeksy
brew untap anubhavitis/peeksy
brew tap anubhavitis/peeksy
brew install peeksyFor new installations:
brew tap anubhavitis/peeksy
brew install peeksy# Start the Peeksy daemon (auto-starts on boot after setup)
peeksy start
# Check if the daemon is running and get its PID
peeksy status
# Stop the running daemon
peeksy stop
# Restart the daemon (useful after configuration changes)
peeksy restart
# Rename any image file using AI
peeksy rename-image "/path/to/your/image.jpg"
# Bulk rename all existing screenshots in your screenshots folder
peeksy rename-existing-screenshots
# View your current configuration settings
peeksy current-config
# View the contents of your prompt template file
peeksy view-prompt-file
# Update your OpenAI API key
peeksy update-api-key "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# Update the path to your prompt template file
peeksy update-prompt-file-path "/path/to/your/custom-prompt.txt"
# View logs for troubleshooting
peeksy logs
# Run the daemon directly (usually not needed, use 'start' instead)
peeksy daemonNote: The daemon must be running for Peeksy to monitor and rename your screenshots. Use peeksy status to verify the daemon is running.
Once you've completed the installation steps above, Peeksy will automatically monitor your screenshots directory. Here's what happens:
-
Start the Service
peeksy start
-
Take Screenshots
- Use your system's screenshot shortcut (⌘⇧3 or ⌘⇧4 on macOS)
-
Watch the Magic
- Peeksy will detect new screenshots
- Analyze the content using GPT-4 Vision
- Automatically rename them with descriptive names
- Original files are preserved with the new names
-
Customize (Optional)
# View your current prompt template peeksy view-prompt-file # Update the prompt template peeksy update-prompt-file-path "path/to/your/custom-prompt.txt"
That's it! Peeksy will continue running in the background, automatically renaming your screenshots as you take them.
Peeksy provides several commands to manage the daemon and configuration:
start- Start the Peeksy daemonstop- Stop the running Peeksy daemonrestart- Restart the Peeksy daemonstatus- Check if the Peeksy daemon is running and get its PID
current-config- Display the current configuration in JSON formatview-prompt-file- Display the contents of the current prompt fileupdate-api-key <value>- Update the OpenAI API keyupdate-prompt-file-path <value>- Update the path to the prompt template file
-
Clone the repository:
git clone https://github.com/anubhavitis/peeksy.git cd peeksy -
Build the project:
cargo build --release
-
Install the binary:
sudo cp target/release/peeksy /usr/local/bin/
-
Start the daemon:
peeksy start
-
Verify the installation:
# Check if the daemon is running peeksy status # View your current configuration peeksy current-config
Note: Make sure you have Rust installed on your system. If not, install it from rustup.rs.
Note: This CLI version is deprecated. For new issues and feature requests, please use the new GUI version: peeksy-app
For legacy CLI support or migration help:
- GitHub Issues: Create an issue (CLI-related only)
For the new GUI version (recommended):
- New Repository: peeksy-app
- Issues & Features: Create an issue in peeksy-app
We recommend migrating to peeksy-app for:
- Better user experience with GUI interface
- Active development and new features
- Enhanced functionality and performance
- Continued support and updates
A heartfelt thank you to:
navedux for creating the beautiful Peeksy logo and identity
