A fast, customizable Alt-Tab replacement for Windows, built with AutoHotkey v2. Designed for power users who want responsive window switching with deep integration for tiling window managers like Komorebi.
- Low Latency - Keyboard hooks run in the GUI process for sub-5ms response times
- MRU Ordering - Windows sorted by most-recently-used, matching native Windows behavior
- Komorebi Integration - Workspace-aware filtering and cross-workspace window activation
- Workspace Toggle - Press Ctrl during Alt-Tab to filter by current workspace
- Configurable - GUI-based configuration editor with live preview
- Fullscreen Bypass - Automatically uses native Alt-Tab in fullscreen games
- Process Blacklist - Exclude specific applications from Alt-Tabby
- Window Blacklist - Filter out unwanted windows by title or class
Alt-Tabby uses a multi-process architecture for reliability and performance:
+------------------+ +------------------+ +------------------+
| Launcher | | WindowStore | | Alt-Tab GUI |
| (Tray + Spawn) |---->| (Server) |<--->| (Client) |
+------------------+ +------------------+ +------------------+
^
|
+-----+-----+
| Viewer |
| (Debug) |
+-----------+
The store maintains the authoritative window list with real-time updates from multiple producers:
| Producer | Purpose |
|---|---|
| WinEventHook | Window create/destroy/focus events (primary) |
| WinEnum | Full window enumeration (on-demand, for Z-order) |
| MRU_Lite | Focus tracking (fallback if WinEventHook fails) |
| KomorebiSub | Workspace tracking via komorebi subscription |
| KomorebiLite | Workspace polling (fallback if subscription fails) |
| IconPump | Async icon extraction |
| ProcPump | Process name resolution |
Clients connect via named pipe (\\.\pipe\tabby_store_v1) and receive delta updates.
The overlay window with keyboard hooks built-in for minimal latency:
- Intercepts Alt+Tab before Windows sees it
- Requests pre-warmed snapshots on Alt press
- Freezes the window list on first Tab press
- Supports quick-switch (Alt+Tab+release before GUI shows)
A diagnostic tool showing the live window list with all fields:
- Toggle between Z-order and MRU sorting
- Filter by current workspace
- Show/hide minimized and cloaked windows
- Double-click to blacklist windows
- Monitor producer health status
- Windows 10/11
- AutoHotkey v2 (for development)
- Optional: Komorebi for workspace features
- Download
AltTabby.exefrom Releases - Run
AltTabby.exe - Right-click the tray icon for options
git clone https://github.com/cwilliams5/Alt-Tabby.git
cd Alt-Tabby
# Run in development mode
AutoHotkey64.exe src/alt_tabby.ahk
# Or compile
compile.batAccess the configuration editor via:
- Tray icon > Config
- Command line:
AltTabby.exe --config
Key settings:
| Setting | Default | Description |
|---|---|---|
| GraceMs | 150 | Delay before showing GUI (quick-switch window) |
| FreezeWindowList | false | Lock list on first Tab press |
| BypassFullscreen | true | Use native Alt-Tab in fullscreen apps |
| BypassProcesses | "" | Comma-separated process names to bypass |
Configuration is stored in config.ini next to the executable.
| Action | Keys |
|---|---|
| Open Alt-Tab | Alt + Tab |
| Next window | Tab (while holding Alt) |
| Previous window | Shift + Tab |
| Toggle workspace filter | Ctrl (while Alt-Tab is open) |
| Cancel | Escape |
| Switch to selected | Release Alt |
- IPC Protocol - Named pipe message schema
- WindowStore API - Store internals and record fields
src/
alt_tabby.ahk # Unified entry point
gui/ # Alt-Tab overlay
gui_main.ahk # Entry, globals, init
gui_interceptor.ahk # Keyboard hooks
gui_state.ahk # State machine
gui_store.ahk # Store IPC client
gui_paint.ahk # Rendering
store/ # WindowStore server
store_server.ahk # Main process
windowstore.ahk # Core API
winevent_hook.ahk # Window events
komorebi_sub.ahk # Komorebi integration
viewer/ # Debug viewer
shared/ # IPC, JSON, config
tests/
run_tests.ahk # Test orchestrator
gui_tests.ahk # State machine tests
# Unit and integration tests
AutoHotkey64.exe tests/run_tests.ahk --live
# GUI state machine tests
AutoHotkey64.exe tests/gui_tests.ahkcompile.bat
# Output: release/AltTabby.exeMIT
- Komorebi - Tiling window manager for Windows
- AutoHotkey - Scripting language for Windows automation
