Are these features from Keyboard Maestro available in BTT?

I’ve found that for most macros I no longer need Keyboard Maestro and can handle everything in BTT instead. That’s absolutely great, one app can do so many things, even if it’s often not as convenient as some narrowly focused utilities. Still, there are a few things I haven’t been able to replicate from KM. They can probably be solved by executing code directly, but there may also be a straightforward GUI-based solution that I just haven’t found.

  1. KM can directly run JavaScript in Chromium-based browsers and in Safari.

  2. In KM, I can directly set audio inputs and outputs (in BTT I handle this via switchaudio-osx).

  3. KM can read a window’s title and monitor changes to it. It can also detect whether a browser has fully loaded a page.

  4. Changes to files or folders can be used as triggers.

Is there any way to solve these things “easily” in BTT?

I haven't added a dedicated action for this because essentially it's just a simple Apple Script call:

tell application "Google Chrome"
    execute front window's active tab javascript "alert('example');"
end tell
tell application "Safari" to do JavaScript "alert('example')" in document 1

(JS execution via scripting must be turned on in the Browser)

This has been on my TODO list for a while but is not yet added.

This probably depends on what you want do do exactly, BTT has the variable "focused_window_title" that can be used in conditions etc. and it has this trigger:

If you want to monitor the "focused_window_title" you could use the "Variable Value Did Change" trigger:

You can use the "File Or Folder Did Change" trigger:

Thanks, I’ll try those approaches. Monitoring the window title is especially useful for browsers or other tab-based applications, where the trigger can be opening a specific document or page.

I’m looking forward to the audio. macOS is really bad at this. There’s no shortcut for switching inputs/outputs. You can’t set a default device, so when you connect AirPods their terrible microphone always gets activated. And that’s not even mentioning the fact that even in 2026 there’s still no per-application volume control. For such basic things that are standard on Windows or Linux, you have to rely on third-party apps on a Mac. :slightly_frowning_face: