KeyStruck — See every shortcut, fired and unfired

3 min read Original article ↗

KeyStruck app icon

A floating glass HUD names every keyboard shortcut you fire — so you don't have to squint at the menu-bar flash to confirm. Double-tap ⌘ and KeyStruck shows you every shortcut the active app has bound.

macOS 13 Ventura or later · Apple Silicon & Intel · Free trial

⌘S Save

What it does

Names every shortcut

Hit any keyboard shortcut bound to a menu item — Save, Quit, Reload, anything — and KeyStruck flashes the action's name in a floating capsule. No more "wait, did that fire?"

🔮

Glass that fits the OS

Real frosted-glass HUD with a specular highlight, inner-curve shadow, and edge fresnel — the way a macOS overlay should look. Auto-flips light/dark for contrast against your UI.

📜

Cheat sheet on demand

Double-tap ⌘ and hold the second press for half a second. KeyStruck lists every ⌘-shortcut the active app has bound, grouped by menu. Add ⇧, ⌥, or ⌃ while holding to filter to that combination. Click any row to fire the action.

  • Reads the action from your menu. Uses the macOS Accessibility API to pick up menu titles from the frontmost app — works in any native app whose menus are AX-exposed.
  • Cheat-sheet rows are clickable. Click any shortcut to fire its menu action without touching the keyboard. KeyStruck doesn't steal focus from the source app — the action lands where you want it.
  • Optional shortcut prefix. Display "⌘S Save" or just "Save" — your call. Special keys (arrows, F-keys, return, escape) are formatted as you'd expect.
  • Light, dark, or auto. Auto picks the opposite of your system mode, so the capsule always contrasts your UI.
  • Frosted glass or flat fill. Translucent vibrancy by default; switch to a solid capsule with adjustable opacity if you prefer something simpler.
  • Pop animation, sound, position. Optional spring-scale entrance, six built-in macOS sounds, seven screen positions.
  • Exclude apps or shortcuts. Suppress the HUD in apps where you don't want it (your password manager, your editor, whatever). Or define specific shortcuts to ignore — ⌃ ⌥ ⇧ ⌘ chips plus the key, scoped Everywhere or to one app.
  • Stays out of the way. Lives quietly in the menu bar — or hide it entirely. Optional Start at login. Featherweight pure SwiftUI + AppKit; tiny binary, instant launch, no background services.

Screenshots

Get KeyStruck

Free trial, then a one-time license. Requires macOS 13 or later. Auto-updates via Sparkle.

⬇ Download KeyStruck

Support

Questions, bug reports, or feature requests? Email ben.dansby@gmail.com and you’ll get a reply, usually within a day or two.

For how-to documentation, see the KeyStruck documentation.

For privacy questions, see the privacy policy.