A lightweight macOS AI assistant overlay built with Electron and the OpenAI API.
MacOverlay AI stays available above other apps, so you can quickly ask questions or analyze screenshots without switching to a browser.
- Always-on-top transparent macOS overlay
- Global shortcuts to show or hide the app
- Text-based AI chat
- Image upload and pasted screenshot support
- OpenAI Responses API integration
- Local API-key storage using macOS Keychain-backed encryption
- Sandboxed renderer and limited IPC bridge for safer desktop architecture
- Electron
- JavaScript / Node.js
- HTML and CSS
- OpenAI Node.js SDK
- macOS Keychain via Electron
safeStorage
User input → Electron UI → Secure IPC bridge → Main process
→ OpenAI API → Response displayed in overlay
- macOS (the overlay and its secure API-key storage use macOS-specific Electron features)
- Node.js 18 or later, including npm
- An OpenAI API key
Clone the repository and enter the project directory:
git clone <repository-url>
cd Mac-Overlay-AIInstall the exact package versions recorded in package-lock.json:
npm ciIf you are developing without the lockfile, use this instead:
npm installFrom the project directory, run:
npm startThis opens the Electron overlay. Keep that Terminal window open while the app is running; press Control + C there to stop it.
- Open the overlay after starting the app.
- Go to Settings and enter your OpenAI API key (it must begin with
sk-). - Save the key, then return to chat and send a message or add an image.
The key is encrypted and stored locally for the current macOS user via Electron's safeStorage and the macOS Keychain.
Option + L— show or hide the overlayCommand + Shift + K— show or hide the overlay