Does yabai need SIP disabled?

Updated 2026-10-22 · by the maker of Ribbon

No. yabai's core tiling works with System Integrity Protection fully on. Partially disabling SIP only unlocks a set of extras, such as creating and moving Spaces, window transparency, shadows and animations. If you don't need those, leave SIP alone.

The short answer

yabai arranges windows through the Accessibility API, like every other macOS window manager. That part doesn't care about SIP. BSP, stack and float layouts, focusing and moving windows, resizing, rules, signals and mouse drag to move or resize all work on a stock Mac.

The SIP question comes from a second piece: a scripting addition that yabai can inject into Dock.app. The Dock owns the only connection to the window server that can do certain things, such as creating a Space or changing a window's opacity. Getting code into the Dock means relaxing some of SIP's protections. So "yabai needs SIP off" is true only for the features that go through the Dock.

Feature by feature

This table follows yabai's own wiki and man page.

FeatureNeeds SIP partly disabled?
BSP, stack and float layoutsNo
Focus, swap, warp and resize windowsNo
Window rules and signalsNo
Move or resize windows with modifier + mouseNo
Focus a Space (space --focus)No SIP note in the current docs
Send a window to another Space (window --space)No SIP note in the current docs
Create, destroy, move or swap SpacesYes
Move a Space to another display (space --display, display --space)Yes
Window transparency (window_opacity, window --opacity)Yes
Remove window shadows (window_shadow)Yes
Window animationsYes (plus Screen Recording)
Scratchpad windowsYes
Window layers: always on top or on the desktop (--sub-layer)Yes
Sticky windows (shown on every Space)Yes
Picture-in-picture for any windowYes

The man page also flags space --switch. If one of the "No" rows matters to you, check the man page for your version, because notes change between releases.

What partially disabling SIP involves

If you decide you want the extras, the process has three parts. The commands below are copied from yabai's wiki page Disabling System Integrity Protection as of October 2026. Read that page and use its current version before running anything. Flags change between macOS releases, and a wrong flag at the boot level is not something to guess at.

1. Relax SIP from macOS Recovery

Boot into Recovery, open Terminal there, and run the line that matches your Mac.

# Apple silicon, macOS 13 Ventura and later (from yabai's wiki)
csrutil enable --without fs --without debug --without nvram

# Apple silicon, macOS 12 Monterey (from yabai's wiki)
csrutil disable --with kext --with dtrace --with basesystem

# Intel, macOS 11 Big Sur and later (from yabai's wiki)
csrutil disable --with kext --with dtrace --with nvram --with basesystem

2. Apple silicon only: set a boot argument

After restarting into macOS, set this boot argument and restart again. It allows arm64e binaries that Apple didn't sign to run, which the scripting addition needs.

# Apple silicon only (from yabai's wiki)
sudo nvram boot-args=-arm64e_preview_abi

3. Let yabai load the scripting addition

Loading the addition needs root, so the wiki has you add a sudoers rule in /private/etc/sudoers.d/yabai that lets your user run exactly one command without a password. The rule pins the yabai binary by its SHA-256 hash:

# format from yabai's wiki; <user>, <hash> and <yabai> are placeholders
<user> ALL=(root) NOPASSWD: sha256:<hash> <yabai> --load-sa

Then put these two lines at the top of your yabairc, so the addition loads at start and again whenever the Dock restarts:

# from yabai's wiki
yabai -m signal --add event=dock_did_restart action="sudo yabai --load-sa"
sudo yabai --load-sa

The ongoing cost

Setting it up once is the easy part. Keeping it working is what people underestimate.

For a personal Mac and someone who wants scripted Space control, that can be a fair trade. On a work Mac, or if you'd rather not think about it, it usually isn't.

Tiling on a Mac with SIP on

You have several good options that never ask you to touch SIP:

For a wider survey, see AeroSpace alternatives and how to tile windows on a Mac.

FAQ

Does yabai work with SIP enabled?

Yes. Tiling, focus, window movement, rules, signals and mouse actions all work with SIP on. Only features that go through the Dock scripting addition need it partly disabled.

Which yabai features need SIP disabled?

Creating, destroying, moving and swapping Spaces, moving Spaces between displays, window transparency, shadow removal, animations, scratchpads, window layers, sticky windows and picture-in-picture for any window.

Do I have to redo anything after updating yabai?

Yes, if you use the scripting addition. The sudoers rule pins yabai's SHA-256 hash, so you update it and reconfigure the addition after every yabai upgrade.

Is it safe to partially disable SIP?

It's a trade-off you choose. It lowers macOS's protection of system files and processes for the whole Mac, which many people accept on a personal machine and avoid on a work one.

Which tiling window managers don't need SIP at all?

AeroSpace, Amethyst, OmniWM and Ribbon all work with SIP fully on, and so does yabai if you skip the extras.

Keep reading