Free & Open Source • Windows 10 & 11

The Always-on-Top "Dynamic Island" HUD for Antigravity & VS Code.

Watch movies, streams, or focus in fullscreen while Antigravity AI agents code in the background. Review and approve pending commands with 1 click or a global hotkey—without Alt-Tabbing, without window focus popups, and without video interruptions.

Fullscreen Media Playback Active (1080p / 4K)

Approval Needed • FFTL-light-astro-theme
HWND_TOPMOST
tool_call:replace_file_content

Target: src/pages/products.astro

✓ 1. Approve(Alt+1)
✕ 2. Reject(Alt+2)
⏱ 14:59Auto
15ms Focus Switch (Zero Window Popups)
Active VS Code Window Routed Automatically

Simulated HUD preview. Floats permanently on top of all Windows 10/11 fullscreen layers.

01. The Problem Solved

Why standard HUDs fail during fullscreen media & deep work.

When you run AI coding agents in the background while watching media or editing files, traditional Windows interfaces break your flow. Notchgent was built from the ground up to solve four critical OS obstacles.

Problem

Windows DWM Fullscreen Suppression

When media players (VLC, Chrome, Windows Media Player) go fullscreen using DirectFlip or Multi-Plane Overlays (MPO), Desktop Window Manager hides ordinary "always on top" windows.

Notchgent Solution:

Continuously re-asserts HWND_TOPMOST with SWP_NOACTIVATE, guaranteeing the capsule remains visible without causing media player flicker.

Problem

Focus Stealing & Window Popups

Approving a command usually requires Alt-Tabbing into VS Code, pulling the IDE to the front, destroying your fullscreen view, and forcing manual window rearranging.

Notchgent Solution:

Uses Win32 AttachThreadInput to bypass LockSetForegroundWindow, sends keystrokes in ~15ms, and instantly pins your fullscreen player back on top.

Problem

Multiple VS Code Windows & Ambiguity

If you develop across several projects with multiple VS Code windows open, generic key senders send keystrokes to the wrong window or crash.

Notchgent Solution:

Inspects working directories (Cwd) and active process trees to dynamically match and target the exact window running that specific agent.

Problem

Brittle Hooks & CLI Tampering

Custom CLI wrappers break upon official Antigravity updates or require complicated monkey-patching of hooks.json.

Notchgent Solution:

Zero-hook architecture. Reads unmodified JSONL trajectories directly from disk, keeping it 100% resilient across future CLI updates.

02. Engineering Specs

Engineered for speed, resilience, and native OS control.

Every interaction in Notchgent is designed around zero latency and total non-intrusiveness.

DWM Bypass

Fullscreen Overlay Persistence

Floats permanently on top of fullscreen video players (Windows Media Player, VLC, MPC-HC, Chrome, Netflix, YouTube) via continuous HWND_TOPMOST re-assertion that bypasses Windows DWM fullscreen suppression.

Win32 Native

Zero Video Interruption (15ms Shift)

Approving an action briefly shifts focus in the background for ~15ms via native Win32 keybd_event and AttachThreadInput, then instantly pins your fullscreen movie player back on top. VS Code never covers your video.

Intelligent Matcher

Dynamic Multi-Workspace Routing

Running multiple VS Code projects simultaneously? Notchgent inspects the pending tool call's working directory (Cwd), target file, and active agy.exe environment to dynamically target the exact VS Code window where that agent is running.

System-Wide

Universal Global Hotkeys

Approve instantly from anywhere with Alt+1, Alt+A, or F8. Reject with Alt+2, Alt+D, or F9. No mouse movement required.

Countdown Timer

15-Minute Hands-Free Auto Mode

Optional 15-minute timer that auto-approves pending agent actions after an audible soft chime, allowing autonomous hands-free progress while you step away.

Clean Taskbar

Auto Re-minimization

If VS Code was minimized to the taskbar, it receives the approval keystroke in the background and is immediately tucked back into the taskbar (SW_MINIMIZE).

Stock Antigravity

Zero-Hook Architecture

Runs against the stock Antigravity CLI without modifying hooks.json or intercepting terminal streams. It observes live JSONL transcripts directly at 400ms intervals.

Zero Dependencies

Standalone Release Binary

Precompiled standalone Notchgent.exe with embedded PyQt6 runtimes and high-res icon assets. Run instantly without installing Python or dependencies.

03. System Architecture

How Notchgent orchestrates background approval

A 7-stage non-blocking loop between the live Antigravity CLI trajectory, PyQt6 Dynamic Island HUD, and native Win32 window APIs.

Stage 01

Antigravity CLI

Agent generates a tool call and appends structured trajectory entries into transcript.jsonl.

Stage 02

Transcript Watcher

Polling thread reads trailing JSON lines every 400ms without file locking or process hook dependencies.

Stage 03

Dynamic Island HUD

Capsule expands with active project name, tool summary, and plays an optional notification chime.

Stage 04

15ms Keystroke Inject

Press Alt+1. Sends "1" + Enter, auto-minimizes VS Code, and re-pins fullscreen media on top.

04. Cheat Sheet

Global hotkeys & on-screen controls

Control background operations with universal system hotkeys that work across any active window.

ActionOn-Screen ControlGlobal HotkeysOS Mechanics & Purpose
Approve Action[ ✓ 1. Approve (Alt+1) ]
Alt + 1Alt + AF8
Injects "1" + Enter into targeted VS Code terminal and restores focus to fullscreen player in <15ms.
Reject Action[ ✕ 2 (Alt+2) ]
Alt + 2Alt + DF9
Injects "2" + Enter to deny or skip the pending agent tool execution.
Toggle Auto Mode[ ⏱ Auto ] / [ ⏱ 14:59 ]
Click button on capsule
Initiates 15-minute countdown for automatic command clearance.
Reposition HUDClick and drag capsule
Mouse drag
Freely move the Dynamic Island anywhere across single or multi-monitor setups.
Close HUD[ ✕ ] Button
Click button on capsule
Cleanly terminates the background observer and releases Win32 hooks.
05. Quick Start

Get started with Notchgent in 60 seconds

Download the precompiled binary directly or run from source using Python 3.10+.

Recommended

Standalone Release (.exe)

Requires zero Python installation or setup. Single executable file bundled with Qt6 runtimes and Win32 hooks.

  1. Clone or download repository from GitHub.
  2. Double-click start.bat or run dist\Notchgent.exe.
  3. The Dynamic Island appears at the top center of your primary monitor.
Download Release on GitHub ↗
Developer Mode

Run from Python Source

Inspect or customize the PyQt6 UI and Win32 focus loop directly in Python.

1. Install Dependencies:

pip install PyQt6 pywin32 psutil pynput pyautogui

2. Launch HUD:

python notchgent.py
Use restart.bat to reload changes cleanly via process tracking PID.
06. Repository Structure

Clean, modular codebase architecture

Zero bloat. Built strictly with standard PyQt6, native Win32 libraries, and automated build scripts.

dist/Notchgent.exe

Compiled standalone release binary (zero dependencies needed)

notchgent.py

Main application: PyQt6 HUD, Win32 window manager & transcript watcher

make_icon.py

High-res multi-resolution icon generator

app_icon.ico

Application and taskbar icon (256x256 down to 16x16)

build.bat

PyInstaller release build script for compilation

start.bat

Quick launcher (prefers compiled exe, falls back to pythonw)

restart.bat

Process-safe restart script (reads .notchgent.pid)

stop.bat

Graceful background termination script

config.json

User configuration settings (geometry, hotkeys, opacity)

Open Source & Community Driven

Contribute, Star, or Fork on GitHub.

Notchgent is released under the permissive MIT License. Contributions, bug reports, and pull requests are welcomed by the FluxFuse engineering community.