Scopo vs yabai
yabai is a scriptable tiling window manager for macOS. Windows are tiled automatically in a binary space partition, every action is a shell command, and paired with a hotkey daemon such as skhd it can automate almost anything. To control Spaces and some window operations it needs System Integrity Protection partially disabled.
Scopo runs on a stock Mac with only the Accessibility and Screen Recording permissions. It tiles on request instead of automatically, keeps each Space's layout to itself, and is a window switcher first: live previews, most-recent-first order, and search across windows and browser tabs. It also runs a local MCP server so coding agents can find windows, switch Spaces, and restore layouts.
| Feature | Scopo | yabai |
|---|---|---|
| Scoped to the Space you're working in | Layouts per Space | |
| Window-level switching (not just apps) | Directional focus via CLI | |
| Cross-Space navigation from the keyboard | With SIP changes | |
| Per-project shelf for files, links & text | ||
| Client / context profiles | ||
| Search across windows | ||
| Live window previews | ||
| Window tiling / snapping | Automatic (BSP) | |
| Price | Free forever, Pro from $1.25/mo | Free, open source |
| Open source |
Where yabai shines
- Every window and Space is scriptable from the shell.
- Automatic binary-space tiling with rules per app.
- Free and open source.
Where Scopo is different
- No SIP changes, no scripts, no config file: install and press Cmd+Tab.
- A window switcher with live previews and search, not just directional focus.
- An MCP server for agents, with agent access off by default.
Choose yabai if
You want maximum control, you script your setup, and you are comfortable changing SIP on your Mac.
Choose Scopo if
You want fast window switching and on-demand tiling on an unmodified Mac, with nothing to configure.