Skip to content

BretonBrander/LeaderKey

Β 
Β 

Repository files navigation

Leader Key.app

The *faster than your launcher* launcher

A riff on Raycast, @mxstbr's multi-key Karabiner setup, and Vim's <leader> key.

Watch the intro video on YouTube:

Yes, I only have that one thumbnail face.

Fork features walkthrough:

Install

πŸ“¦ Download from GitHub Releases β€” grab the LeaderKey-X.X.dmg file

Installation:

  1. Download the .dmg file from the latest release
  2. Open the DMG and drag Leader Key to your Applications folder
  3. First launch only: Right-click Leader Key.app β†’ "Open" β†’ click "Open" in the dialog
  4. After that, open normally anytime

Note: This app is unsigned. macOS will show a security warning the first time β€” this is normal for apps distributed outside the Mac App Store. The right-click method bypasses Gatekeeper for this app only.


Post-Install Setup

  • Open the settings menu with the menu bar icon Screenshot 2025-05-21 at 1 58 46β€―PM

  • Choose your leader (Shortcut that will open the app)

    Screenshot 2025-05-21 at 2 01 56β€―PM
  • Add your shortcuts to the Config settings

Can't find the menu bar icon? Open settings directly from Terminal:

open "leaderkey://settings"

Why Leader Key?

Problems with traditional launchers:

  1. Typing the name of the thing can be slow and give unpredictable results.
  2. Global shortcuts have limited combinations.
  3. Leader Key offers predictable, nested shortcuts -- like combos in a fighting game.

Example Shortcuts:

  • leaderom β†’ Launch Messages (open messages)
  • leadermm β†’ Mute audio (media mute)
  • leaderwm β†’ Maximize current window (window maximize)

URL Scheme

Leader Key supports URL scheme automation for integration with tools like Alfred, Raycast, shell scripts, and more.

Available URL Schemes

Configuration Management

# Reload configuration from disk
open "leaderkey://config-reload"

# Show config.json in Finder
open "leaderkey://config-reveal"

Window Control

# Show Leader Key window
open "leaderkey://activate"

# Hide Leader Key window
open "leaderkey://hide"

# Clear navigation state (return to root)
open "leaderkey://reset"

Settings & Info

# Open settings window
open "leaderkey://settings"

# Show about dialog
open "leaderkey://about"

Navigation

# Navigate through keys and execute actions
open "leaderkey://navigate?keys=a,b,c"

# Navigate without executing (preview mode)
open "leaderkey://navigate?keys=a,b,c&execute=false"
Optional arrow-key navigation
You can also navigate the menu with ↑ and ↓. Use β†’ to enter groups and ← to go back, then press Enter to launch the selected item.

Example Use Cases

  • Alfred/Raycast workflows: Trigger Leader Key shortcuts programmatically
  • Shell scripts: Automate configuration reloads after editing config.json
  • Keyboard maestro: Chain Leader Key actions with other automations
  • External triggers: Open specific action sequences from other applications

Keyboard Shortcuts

Key Action
↑ / ↓ Move selection up/down
β†’ Enter selected group
← Go back to parent group
Enter Execute selected item
Backspace Return to root
Escape Go back (or close if at root)
? Show cheatsheet
⌘ , Open settings

Action Types

Leader Key supports these action types (configure in Settings β†’ Config):

  • Application β€” Launch any app
  • URL β€” Open URLs or URL schemes (e.g., raycast://, slack://)
  • Command β€” Run shell commands
  • Folder β€” Open folders (optionally with a specific app)
  • File β€” Open files (optionally with a specific app)
  • Script β€” Run shell scripts with optional arguments

Modifier Keys

Configure in Settings β†’ Advanced

Modifier What it does
Sticky Mode Hold while pressing an action to keep Leader Key open afterward
Group Sequences Hold while pressing a group key to run ALL actions in that group at once

FAQ

What do I set as my Leader Key?

Any key can be your leader key, but only modifiers will not work.

Examples:

  • F12
  • ⌘ + space
  • ⌘βŒ₯ + space
  • ⌘βŒ₯βŒƒβ‡§ + L (hyper key)

Advanced examples:

Using Karabiner you can do more fancy things like:

  • right ⌘ + left ⌘ at once (bound to F12) my personal favorite
  • caps lock (bound to hyper when held, F12 when pressed)

See @mikker's config in the wiki for akimbo cmds example.

I disabled the menubar item, how can I get Leader Key back?

Activate Leader Key, then cmd + ,.

Command action is failing with "Command not found"

You need to make sure your shell environment is correctly set up for non-interactive mode, and exports the PATH variable.

For zsh make sure you have your PATH variable exported in ~/.zshenv

For bash make sure you have your PATH variable exported in ~/.bash_profile

License

MIT

About

The *faster than your launcher* launcher

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Swift 99.1%
  • Shell 0.9%