Open source
Cmd-Tab
Cmd-Tab is my replacement for the macOS app switcher. Press ⌘-Tab and it switches between apps the way the built-in one does, or between every window you have open. It also does keyboard tiling, search and per-app rules, and runs on macOS 14 and later.

What it does
- Switch between apps, or between every window across all apps
- Type to filter, with fuzzy matching that learns which app you meant
- Close, quit, hide or tile the highlighted window without leaving the switcher
- Keyboard tiling into halves, thirds, quarters and corners, with adjustable gaps
- Favorites, per-app rules and a searchable overview of every Desktop
- A URL scheme and Shortcuts actions for driving it from scripts
How it's built
Taking over ⌘-Tab
macOS reserves ⌘-Tab at a level no public API can intercept. Cmd-Tab turns the system switcher off through a private SkyLight call, then claims the keystroke with a session-level event tap before the focused app sees it. The private call is looked up at runtime instead of linked, so if a future macOS drops it, Cmd-Tab logs that it can't take over and keeps running. Quitting gives you the system switcher back, and so does logging out after a crash.
Keeping the event tap alive
The tap runs on the main thread, and macOS kills a tap that stalls, which takes every keystroke on the machine with it. Every Accessibility call is a message to another process and can hang on a frozen app, so none of them run inside the tap. Window lists are cached and refreshed on background queues. The panel opens from that cache straight away, and each app gets 250ms to answer before it's skipped.
Swift 6 language mode
The package builds in Swift 6 language mode. Those threading rules used to be conventions I had to remember, and now the compiler checks them. The few places where it can't see a guarantee carry a note at the declaration saying why the code is safe.
Battery
Almost everything is driven by system notifications. The two checks that have to poll run every five seconds on power and every thirty on battery or in Low Power Mode, since neither is watching for anything that changes quickly.
Stack
- Swift
- AppKit
Source
github.com/kdbaustert/Cmd-Tab · Releases
Other apps
Get in touch
Most of my paid work is PHP and Laravel. If you have some, tell me about it.
I'm available now for full-time roles and contract work, remote or hybrid around Lakeland, Tampa and Orlando.