KeyMinder

A macOS menu bar app that instantly shows the keyboard shortcuts of whichever app you're currently using.

↓ Download v0.1.64 View on GitHub

Chrome may warn about this download — the app is notarized by Apple. Click the warning → Keep to proceed.

What it does

Instead of hunting through menus to find shortcuts, KeyMinder pops up a clean overview of every keyboard shortcut available in the frontmost app — grouped by menu, triggered by a user-defined hotkey or double-tap on the command, option or control key.

Click any shortcut in the popup to run it immediately. KeyMinder reads menu structures directly via the macOS Accessibility API, so shortcuts are always accurate and up to date for whatever app you're using.

You can search for a keyboard shortcut by starting to type its name and then tab there to execute the command directly. Toggle or hold modifier keys (⌃ ⌥ ⇧ ⌘) to filter by exact modifier combination — hold ⌘ to see only Command shortcuts, add ⇧ to narrow to Command-Shift. When all shortcuts fit on screen, non-matching rows dim in place so the layout stays stable. There is even an option to show menu items without keyboard shortcuts — these show only when at least two letters of the command are matched.

KeyMinder showing Safari keyboard shortcuts grouped by menu

Click to enlarge

Requirements

macOS 14 (Sonoma) or later
Accessibility permission
Apple Silicon or Intel
No App Store required

Install

  1. Download and unzip KeyMinder_0.1.64.zip
  2. Move KeyMinder.app to /Applications
  3. Open KeyMinder — macOS will ask for Accessibility permission
  4. Grant permission in System Settings → Privacy & Security → Accessibility

Why not on the App Store?

KeyMinder uses the Accessibility API to read other apps' menus. This is fundamentally incompatible with the App Store's mandatory App Sandbox — no entitlement exists to re-open this capability inside the sandbox.

The same constraint applies to similar tools such as KeyCue and Shortcat. KeyMinder is distributed as a notarized Developer ID build and is fully open source.

What's new

v0.1.64 Jun 4, 2026 — current
  • Choose a custom key-badge colour in Settings → Appearance, or follow the system accent colour from System Settings
v0.1.63 Jun 4, 2026
  • Settings now shows an error when a hotkey is already claimed by another app, and no longer saves it
  • Fixed: popup could appear empty in all-entries mode for apps where no menu items have keyboard shortcuts
  • Fixed: rapid popup toggles could queue multiple concurrent background menu reads
  • Fixed: crash (rare) when two top-level menus in an app share the same title
v0.1.62 Jun 3, 2026
  • Modifier filter toggle buttons now announce their state correctly to VoiceOver
v0.1.61 Jun 3, 2026
  • Automated release pipeline: archive, notarize, staple, and deploy in one script
v0.1.60 Jun 2, 2026
  • When all shortcuts fit on screen without scrolling, non-matching rows now dim in place instead of collapsing — the layout stays stable while filtering
  • Dimmed rows are non-clickable and skipped by Tab navigation
v0.1.59 Jun 2, 2026
  • Holding a modifier key (⌃ ⌥ ⇧ ⌘) while the popup is open now activates the modifier filter in real time — release to clear
  • Toggle buttons and physical key presses work independently and compose: toggling ⌘ and holding ⇧ filters to exactly ⌘⇧
v0.1.58 Jun 2, 2026
  • New modifier key filter: toggle ⌃ ⌥ ⇧ ⌘ buttons in the popup header to show only shortcuts that use exactly those modifiers
  • Esc clears the modifier filter before dismissing, same as the text filter
v0.1.57 Jun 2, 2026
  • Internal stability improvements and expanded test coverage
v0.1.56 Jun 2, 2026
  • About panel simplified — no longer shows the internal git commit hash; now shows version, author, and homepage link
v0.1.53 Jun 2, 2026
  • Filter results are now pre-computed once per query change — smoother scrolling and faster Tab navigation in large shortcut lists
v0.1.52 Jun 2, 2026
  • Onboarding screen text updated to clarify that the popup refreshes automatically after granting Accessibility access — no relaunch needed
v0.1.49 Jun 2, 2026
  • New setting to enable debug logging — off by default; toggle under Developer in Settings
v0.1.48 Jun 2, 2026
  • Double-tap trigger completely rewritten — now works reliably after Command-Tab, app switches, and sleep/wake
  • Trigger is re-armed automatically when Accessibility permission is granted, so no relaunch is needed after the first-run setup
  • Trigger is re-armed automatically after the Mac wakes from sleep
v0.1.43 Jun 2, 2026
  • About panel in the right-click context menu — shows version, author, and a link to the homepage
  • Double-tap detection is more reliable — trigger window widened to 500 ms
  • Stability improvements: tighter Accessibility error handling and better log privacy
v0.1.39 Jun 1, 2026
  • New setting to show all menu entries in the popup, not just those with keyboard shortcuts
  • When "show all entries" is on, the full list appears after typing 2 characters in the filter
  • Section headers in "show all" mode can be collapsed to hide their contents
  • When filtering, sections with no matches collapse automatically to keep the list compact
  • Tab moves focus through visible shortcuts; Return activates the focused one
v0.1.38 May 29, 2026
  • Clicking a shortcut in the popup now runs it in the target app — KeyMinder works as a launcher, not just a reference
v0.1.37 May 27, 2026
  • After granting Accessibility permission, the popup refreshes automatically — no close-and-reopen needed
  • App now has a proper icon
  • Full VoiceOver / screen reader support throughout the shortcuts panel
  • Settings window adapts to content height — no more clipping at larger text sizes
  • Fixed a rare crash when connecting or disconnecting displays
  • Stability improvements for rapid popup toggling
v0.1.23 May 25, 2026
  • Initial release
  • Double-tap trigger — show KeyMinder by quickly pressing a modifier key twice
  • Menu scraping runs in the background — no UI freeze while shortcuts load
  • Type-to-filter — start typing while the popup is open to highlight matching shortcuts
  • Smooth fade-in / fade-out animation with subtle scale when the popup opens
  • Popup shown automatically on first launch for discoverability