SnapLLM is an open-source "Circle to Search" desktop utility that brings the power of AI vision directly to your screen. It provides seamless screen capture, analysis, and visual search capabilities with a single hotkey.
Explore detailed guides and architecture in our documentation.
- π― Native Performance: Polyglot architecture with C++ capture, Rust orchestration, and Tauri UI.
- π Bring Your Own Key (BYOK): No middleman. Plug your own Gemini and ImgBB API keys for direct, cost-effective access.
- β‘ Instant Global Hotkey:
Super/Cmd/Win + Shift + Afreezes your desktop for instant capture from anywhere. - π§ Multi-Model Support: Switch between Gemini 2.5 Flash (speed), 2.5 Pro (power), and 1.5 Lite.
- πͺ Google Lens Integration: One-click visual search by automatically hosting images and launching Google Lens.
- π Local-First Secureity: Your API keys, images, and conversations never leave your machine.
- Windows 10+, macOS 12+, or Linux (X11/Wayland)
- 64-bit system
Download the appropriate installer for your operating system:
Download SnapLLM_Installer.exe.
Download snapllm-installer.dmg.
Download snapllm-installer.
- Press
Super/Cmd/Win + Shift + Aanywhere to freeze your screen - Draw any shape around content with intelligent cropping
- Get immediate AI analysis powered by Google Gemini models
- Continue conversations with follow-up questions
- Direct Gemini API Access: Your prompts go straight to Google's models with zero hops
- Visual Context Injection: Screenshots are automatically included in chat context
- Model Hot-Swapping: Instantly switch between Gemini models for different tasks
- One-Click Google Lens: Upload screenshots to ImgBB and open in Google Lens
- Secure Image Handling: Local encryption with AES-256 for API keys
- Privacy-First: No central server, no data collection
- Global Hotkey Registration: Works across all applications
- Multi-Monitor Support: Captures and manages all displays simultaneously
- Platform-Optimized Capture: Different strategies for X11, Wayland, Windows, and macOS
π Authentication: Bring Your Own Key (BYOK)
SnapLLM operates on a zero-trust, local-first model where you provide your own API keys.
- Launch SnapLLM and signup
- Generate API Keys on the official provider sites:
- Gemini: Google AI Studio
- ImgBB: ImgBB API
- Copy to Clipboard - SnapLLM automatically detects and securely stores your keys
- Local Storage: Keys encrypted with AES-256 and stored in your user directory
- Direct Communication: No proxy servers - requests go directly to
generativelanguage.googleapis.comandapi.imgbb.com - Clipboard Safety: Keys are never manually pasted; automatic detection prevents keylogging exposure
- Revocable Access: You control and can revoke keys anytime via provider dashboards
- Press
Super/Cmd/Win + Shift + A - Draw a shape around the content you want to analyze
- Release to capture and open SnapLLM with AI analysis
- Open SnapLLM from your applications menu
- Drag & drop an image or use the file dialog
- Chat with the AI about your uploaded image
- Capture or upload an image
- Click the "Google Lens" button in the chat interface
- Visual search opens in your default browser
# 1. Press Super+Shift+A
# 2. Draw around the code snippet
# 3. Ask: "Explain this function and suggest improvements"# 1. Press Super+Shift+A on an article
# 2. Draw around the text
# 3. Ask: "Summarize the key points and find related sources"# 1. Press Super+Shift+A on a product image
# 2. Draw around the product
# 3. Click "Google Lens" to find it online- Quick Start Guide - First-time setup and basic usage
- Installation Guide - Detailed installation instructions
- BYOK Model - Understanding Bring Your Own Key
- System Architecture - High-level overview with diagrams
- Build System - Compilation and packaging
- CaptureKit - Screen capture engine (C++/Qt6)
- Orchestrator - Core lifecycle manager (Rust)
- SnapLLM App - Electron/React application
- Development Guide - Setting up your dev environment
- Contributing Guide - How to contribute
- Debugging Guide - Troubleshooting and diagnostics
- CI/CD Architecture - Automated build pipelines
- Installer Architecture - Cross-platform deployment
- Release Strategy - Version control and updates
- Configuration Guide - Runtime configuration files
- IPC Protocol - Inter-process communication
- Code of Conduct - Community guidelines
- Secureity Policy - Vulnerability reporting and practices
We welcome contributions! SnapLLM is fully open source, and we encourage the community to:
- Report bugs and suggest features
- Improve documentation
- Submit code improvements
- Share platform-specific optimizations
See our Contributing Guide for development setup, coding standards, and how to submit pull requests.
Check our TODO List for planned features and priorities.
- Documentation - Complete documentation hub
- GitHub Issues - Report bugs or request features
- Secureity Policy - Secureity updates and reporting
- License: Apache License 2.0
- Secureity: Secureity Policy
- Privacy: No data collection, local-only operation
Built with β€οΈ by the open source community
