Guides

Keysmith was designed from the ground up to be as simple and easy to use as possible.

The trade-off we've made in keeping things simple is that the most obvious way to do something isn't always the fastest or most powerful way to do it.

You don’t need any of the information here to use Keysmith successfully, but if you’re the kind of person who enjoys reading manuals and getting the most out of your tools, you’re in the right place.

Note: you can edit any of the global hotkeys mentioned below in Keysmith’s Preferences.

Creating and Running Macros

The easiest way to create a new Keysmith macro is by creating a "Scratch" macro.

Recording to Scratch

You can start recording a new macro without first opening the Keysmith editor by pressing ⌥⌘R. Then press it again when you’re done to stop recording. (Double tapping Escape works for that too.)

The Scratch Macro

When you're done recording Keysmith will open the new macro with the name "Scratch". Scratch macros are meant to be temporary.

If you want to keep the macro you just recorded, make sure you rename it so it isn’t overwritten the next time you record to Scratch. Press ⇧⌘T to jump to the Title field, and ⇧⌘H to assign a Hotkey.

Run Last Recorded Macro

Press ⇧⌘Return to run the macro you just recorded, or add the option key (⇧⌥⌘Return) to repeat it.

Repeating Macros

You can repeat any Keysmith macro a fixed number of times. This is one of Keysmith's most powerful features, especially when combined with the ability to quickly create Scratch macros.

Repeating a macro

There are four ways to repeat a macro:

  1. Select the macro in Keysmith and click "Repeat Macro..." in the "More" menu.
  2. Select the macro in Keysmith and ⌥Click the Run button.
  3. Select the macro in the Quick Launcher and hit ⌥Return.
  4. After recording a Scratch macro, use the global hotkey to "Repeat Last Recorded Macro", which is bound to ⇧⌥⌘Return by default.

In each case you'll be prompted for the number of times to run the macro. Either type in a number, or use the arrow keys or ^N/^P to adjust the number. Then hit Return to run.

The Quick Launcher

Opening the Quick Launcher

The Quick Launcher lets you run a Keysmith macro by name. Open it from anywhere with ⌥⌘Space.

Search

The Quick Launcher will match partial-words and words in any order, which allows you to be extremely flexible with your search query. Here's an example:

A screenshot of the quick launcher searching for a macro called Type Command

If there are multiple results you can use the arrow keys (or ^N/^P) to move the selection. Hit Return to run the selected macro, ⌥Return to repeat the selected macro, or ⌘Return to show the selected macro in Keysmith (without running it).

Not Every Macro Needs a Hotkey

The Quick Launcher is great for macros that you don't use very frequently. If you’ve got dozens of macros, it can be overwhelming to choose and remember hotkeys for each of them. Use the Quick Launcher to run them by name instead.

Aside from the global hotkey to "Repeat last recorded macro", we’ve found the Quick Launcher to be the best way to quickly repeat a macro.

Corner Relative Clicks

Keysmith relies on accessibility APIs to identify what UI elements you click on. Some apps, like Slack, aren’t native Mac apps, so Keysmith can’t see its elements.

Instead, Keysmith will click at a given point. Usually, that’d be fragile because you might move or resize a window. But Keysmith is smart enough to recognize when you click on something near a corner, and it’ll show the coordinates of that click from that corner. So you can move or resize the window and it’ll still click at the right place.

The chosen corner is indicated by the arrows in the action. For instance, the arrows in the following action indicate that the click is relative to the upper right corner (it's 40 pixels left and 70 pixels down):

A screenshot of a coordinate click relative to the top right corner.

You can adjust which corner to click relative to by clicking on the arrows themselves to toggle their direction.

If you want to turn a UI element click into a coordinate click, click on the name of the element in the action and select "At point..." from the menu:

A screenshot of changing a UI element click to a coordinate click.
Syncing across multiple Macs

Keysmith stores all of your macros in a .keysmithdb file. You can use a service like Dropbox, iCloud Drive, or git to sync your macros across multiple Macs by having Keysmith move that file to a synced folder.

On your first Mac:

  1. Open Preferences (⌘, or "Keysmith > Preferences" in the menu bar) and under the "Sync" section click on "Choose location…".
  2. Choose the folder you’d like to sync to. We recommend creating a new folder in your sync service that’s just for Keysmith, since Keysmith will also occasionally add backup files to this folder.

Then, on your second Mac:

  1. (Optional) If you have any macros on this computer that aren’t on the other one, export them all with "File > Export All Macros…" or individually with "File > Export Macro…".
  2. Open Preferences and click on "Choose location…".
  3. Choose that same synced folder. (Make sure to select the folder, not the .keysmithdb file.)
  4. (Optional) If you exported any macros in step 1, import them now by double clicking on the .keysmith files.
"Cyborg Mode"

Some tasks can't be fully automated because unique input is required each time the task is performed. For example, if you create a macro to quickly start a new Google Meet video chat, you might want to specify a name for the meeting each time you run it. For tasks like these, Keysmith implements a "Cyborg mode", named because the task is part-human and part-machine.

Cyborg mode consists of inserting a "Pause until key press" action where input is required.

A screenshot of adding a new Pause Until Key Press action below another action

When Keysmith hits this action, it will pause the macro and play a short sound to indicate that its ready for your input. When you're done, press ⇧⌘Return to continue the macro.

Cyborg mode is particularly powerful when combined with repeating macros, as Keysmith will stop for input during each iteration.

Abort!

If you run a macro and it does something you didn't expect, double tap Escape and it'll stop running.