fazerwmctl is a small command-line tool that ships with the app, inside the app bundle:

/Applications/FazerWM.app/Contents/MacOS/fazerwmctl

Most people symlink it once so the short name works everywhere:

ln -s /Applications/FazerWM.app/Contents/MacOS/fazerwmctl /usr/local/bin/fazerwmctl

FazerWM must be running — fazerwmctl sends commands to the running app and does nothing on its own.

Commands

CommandWhat it does
focusFocus a workspace on a display
add-workspaceCreate and focus a new empty workspace
helpPrint usage

focus

fazerwmctl focus --workspace <name|index> --display <N> [--named]
OptionValueMeaning
--workspace, -wname or 1-based indexThe workspace to focus. Required.
--display, -d1-based display indexWhich display the workspace lives on. Required.
--named, -nflagThe workspace is addressed by name instead of number.

add-workspace

fazerwmctl add-workspace --display <N>

Takes only --display, -d (1-based display index). Creates a new numbered workspace on that display and focuses it — the same action as the + item in the SketchyBar indicator row.

Examples

# Focus workspace 2 on display 1
fazerwmctl focus --workspace 2 --display 1

# Focus the named workspace "work" on display 2
fazerwmctl focus --workspace work --display 2 --named

# Create and focus a new workspace on display 1
fazerwmctl add-workspace --display 1

How it talks to FazerWM

fazerwmctl connects to a Unix-domain socket created by the running app:

~/Library/Caches/com.konstruuktlabs.FazerWM/ipc.sock

Commands are small JSON payloads; the app validates the connecting process before acting. If the socket is unavailable, the CLI falls back to DistributedNotificationCenter. Nothing leaves the machine — the network is never involved (it is only used for license and trial validation).

The SketchyBar workspace items use the same mechanism: their click scripts invoke the equivalent of fazerwmctl focus for the workspace you click.