Keyboard Cowboy: Simplify Working with Hotkeys in macOS

I wouldn’t say I’m a super-efficient keyboard-only computer user. However, I often find myself wishing for a custom hotkey combination to accomplish a specific task. Today, I’ll share how to solve this issue.

Keyboard Cowboy is a free, open-source utility that allows you to assign hotkeys for launching one or multiple applications and, if needed, set up automation for entire workflows.

When you first launch the app, you’ll have a choice between a default set of commands and none at all. The developers recommend selecting the first option, and I agree. The blank set is only suitable if you’ve used Keyboard Cowboy before.

Choosing the Default configuration gives you access to about a dozen presets categorized by type: automation, applications, AppleScript, and more.

That said, not every preset contains actual content, and even when they do, it’s often minimal. For instance, the Applications category has just five workflows by default: switch to Finder, TextEdit, Terminal, Safari, or open System Preferences.

These examples, however, make it easy to understand how to create custom action sets for various hotkeys. Each set consists of two simple configurations.

The first is the actual hotkey combination required to trigger the command. You can choose to pass this keystroke to the current application and even set a short delay for pressing the keys.

In the second section, you specify which actions to perform and in what order. With a single hotkey, you can launch multiple applications at once. Additionally, you can define how each application should launch—e.g., in the background, minimized, waiting for another app to start, and more.

Moreover, you can select whether applications launch simultaneously or sequentially.

With these commands, you can trigger or execute almost anything:

  • Applications
  • Menu items
  • UI elements
  • Links
  • Scripts
  • Window management
  • And more

Preconfigured setups can be saved for future use and easily switched between. For instance, you could create separate profiles for work and personal use.