A macOS menu-bar hotkey launcher. Bind global hotkeys to apps, shell commands, or scripts; launch / focus / cycle app windows; and see a cheat-sheet overlay of your bindings. Configured with a simple TOML file or an in-app settings window.
Launchers like Raycast and Alfred are powerful, do-it-all tools. Leap isn't trying to be that. It's deliberately minimal and aimed at development workflows — a fast, keyboard-driven way to jump between editors, terminals, and project scripts. No plugin store, no accounts, no background indexing; just a tiny native menu-bar app and a text config. It's much lighter as a result: a single small binary that stays out of your way.
Stack: Swift 6 + AppKit, built with SwiftPM.
- Menu-bar app (no Dock icon).
- Global hotkeys bound to per-slot actions:
- app — launch, focus, or cycle its windows (Accessibility API).
- command — run in a new terminal window (Ghostty / iTerm2 / Terminal / …).
- script — run a script file, or an inline one-liner (headless, fire-and-forget; the settings dialog handles files, inline bodies via TOML).
- Cheat-sheet overlay — hold the trigger key (default ⌥) to see all bindings; entries are clickable. Position/orientation/trigger are configurable.
- Settings window — a form editor, a raw-TOML editor with syntax highlighting and validation, and a live Logs tab (kept in sync).
- Config at
~/.config/leap/config.tomlwith import/export for sharing. - Start-at-login (
SMAppService) and.appbundling.
- macOS 14+
- Xcode (Swift 6 toolchain)
- mise (recommended, for tasks)
Download Leap.app from the latest release
(unzip, or open the .dmg and drag it to /Applications).
The app is ad-hoc signed (not notarized), so macOS Gatekeeper will refuse to open it with "Apple could not verify Leap.app is free of malware." Clear the quarantine flag once:
xattr -dr com.apple.quarantine /Applications/Leap.appThen open it normally. (Alternatively: System Settings → Privacy & Security → Open Anyway.)
mise run setup # install dev tools + git hooks (first time)
mise run open # build, bundle, and launch Leap.appGrant Accessibility permission when prompted (needed to control other apps'
windows), then press ⌥1–⌥5, or hold ⌥ for the cheat sheet. Open Settings…
from the menu bar (or ⌥,) to edit bindings.
Leap only touches three places. To remove it completely:
- Quit Leap and turn off Start at Login first (menu bar → the toggle), so no login item is left behind.
- Delete the app:
rm -rf /Applications/Leap.app(or wherever you put it, e.g.dist/Leap.app). - Delete the config:
rm -rf ~/.config/leap. - Revoke permissions (optional): System Settings → Privacy & Security → Accessibility (and Input Monitoring) → remove Leap.
That's everything — no other files, caches, or hidden state.
- Configuration — the TOML format and every option.
For contributors: CONTRIBUTING.md · ARCHITECTURE.md · RELEASING.md · AGENTS.md
See LICENSE.