A stealth overlay assistant for Windows that is invisible to screen capture and screen sharing. Perfect for discreet AI-powered assistance during presentations, calls, or any screen-sharing scenario.
- 🔒 Stealth Mode - Invisible to screen capture, screenshots, and screen sharing (uses Windows
WDA_EXCLUDEFROMCAPTURE) - 🤖 AI Integration - OpenAI GPT-4o-mini powered responses
- ⌨️ Global Hotkeys - Quick access from anywhere
- 📌 System Tray - Runs quietly in the background
- 🎨 Modern UI - Sleek, semi-transparent floating overlay
| Shortcut | Action |
|---|---|
Ctrl + Space |
Toggle visibility / Send prompt (when text entered) |
Enter |
Send prompt to AI |
Escape |
Clear input and hide window |
Escape (double-tap) |
Reset UI and re-center window |
- Reset Button (↻) - Clears input/response and re-centers the window
- Hide Button - Minimizes to system tray
- Menu Button (⋮⋮) - Reserved for future features
- Close Button (×) - Exits the application
- Drag - Click and drag the top bar to move the window
GhostBar/
├── App.xaml / App.xaml.cs # Application entry point
├── MainWindow.xaml / .cs # Main overlay UI and logic
├── OpenAIClient.cs # OpenAI API integration
├── NativeMethods.cs # Windows P/Invoke declarations
├── Logger.cs # Debug logging utility
├── ChatMessage.cs # Chat message model
└── GhostBar.csproj # Project configuration
Uses Windows API SetWindowDisplayAffinity with WDA_EXCLUDEFROMCAPTURE flag to make the window invisible to:
- Screenshots (Win + PrintScreen)
- Screen recording software
- Video conferencing screen share (Teams, Zoom, etc.)
Registers a system-wide hotkey using RegisterHotKey Windows API:
- Hotkey:
Ctrl + Space - Works even when GhostBar is not focused
Uses Windows Forms NotifyIcon for system tray presence:
- Double-click tray icon to show window
- Right-click for context menu (Show/Exit)
- Windows 10/11
- .NET 10 Desktop Runtime (for release builds)
-
Clone the repository:
git clone https://github.com/tolutally/GhostBar.git cd GhostBar
-
Set your OpenAI API key as an environment variable:
# PowerShell (current session) $env:GHOSTBAR_OPENAI_API_KEY = "your-api-key-here" # Or set permanently (User level) [Environment]::SetEnvironmentVariable("GHOSTBAR_OPENAI_API_KEY", "your-api-key-here", "User")
-
Build and run:
dotnet build dotnet run
dotnet publish -c Release -r win-x64 --self-contained true- API Key Security: The API key is read from
GHOSTBAR_OPENAI_API_KEYenvironment variable. Never commit secrets to Git. - SSL Bypass: The current implementation disables SSL certificate validation for debugging. This should be removed for production use.
- Stealth Limitation: The window is still visible to the user; it's only hidden from capture software.
Debug logs are written to:
%LocalAppData%\GhostBar\Logs\ghostbar_YYYY-MM-DD.log
Built with:
- WPF (Windows Presentation Foundation) for UI
- Windows Forms for NotifyIcon (system tray)
- P/Invoke for Windows API calls
- HttpClient for OpenAI API requests
GhostBar is configured for automated cloud distribution via GitHub Actions.
- Commit changes to your code.
- Tag the release with a version starting with
v(e.g.,v1.0.0):git tag v1.0.0 git push origin v1.0.0
- Wait for the Build:
- Go to the Actions tab in GitHub.
- Watch the "GhostBar Release" workflow.
- Download:
- Once complete, a new Release will appear in the GitHub sidebar.
- It will contain
GhostBar-Release.zipready for download.
You can also manually trigger a build without tagging:
- Go to Actions > GhostBar Release.
- Click Run workflow.
MIT License - feel free to use and modify as needed.