AeroSpace: i3-Inspired Tiling Window Manager for macOS
AeroSpace is an i3-like tiling window manager for macOS
At a glance
- What is it?
- AeroSpace is a macOS tiling window manager that brings i3's tree-based paradigm and workspace model to macOS without disabling System Integrity Protection, using a plain text TOML configuration file and a CLI-first design.
- Who is it for?
- AeroSpace is a good fit for macOS developers who already think in i3 terms and want a keyboard-driven tiling setup without disabling System Integrity Protection. The right path is to install via Homebrew for automatic updates, read the guide at nikitabobko.github.io/AeroSpace/guide before customizing the config, and verify your monitor arrangement matches the layout required for proper multi-monitor behavior.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 9 days ago.
- What is it written in?
- Mainly Swift, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 29, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What AeroSpace Does and Who It Targets
AeroSpace is a tiling window manager for macOS that places every window in an automatically managed layout, removing the need to drag and resize windows manually. The project is explicitly i3-inspired. i3 is a tiling window manager for Linux that uses a tree data structure to organize windows into splits and containers, with keyboard shortcuts to move focus, move windows, and switch workspaces. AeroSpace brings that paradigm to macOS.
The intended user is a developer or power user already familiar with i3 or similar tiling managers on Linux who has moved to macOS and misses keyboard-driven window control. macOS provides its own Spaces system for virtual desktops, but AeroSpace's documentation notes that native Spaces have considerable limitations, which is why AeroSpace implements its own virtual workspace emulation instead of building on top of them. The result is faster workspace switching without the animation delays that native Spaces transitions involve.
The Tree Paradigm and Virtual Workspace Emulation
AeroSpace represents the window layout as a tree. Each monitor has a root node; its children are containers that split either horizontally or vertically; and windows sit at the leaves. When you open a new window in a workspace, AeroSpace places it according to the current split direction setting and resizes all siblings automatically. You can change the split direction at any time to control whether a new window opens to the right or below the current one.
Virtual workspaces in AeroSpace are not macOS Spaces. Instead, AeroSpace implements its own workspace emulation that moves windows off-screen when a workspace is not active and moves them back when you switch to it. This sidesteps macOS's animation system entirely and gives a near-instant switch. The trade-off is that AeroSpace's workspaces are not the same thing as macOS Mission Control workspaces, so macOS's own workspace shortcuts and gesture navigation do not interact with AeroSpace workspaces.
Multi-monitor support follows the i3 model: each monitor shows one workspace at a time, and workspaces can be moved between monitors. The guide explicitly requires that monitors be properly arranged in System Preferences for the layout to work correctly.
Installing AeroSpace via Homebrew
The preferred installation method is Homebrew, which also provides automatic updates:
brew install --cask nikitabobko/tap/aerospaceThis pulls from the maintainer's own Homebrew tap at github.com/nikitabobko/homebrew-tap. The Homebrew installation script removes the `com.apple.quarantine` attribute from the downloaded binary, which means the app opens without macOS's warning about software it cannot check for malicious software.
AeroSpace is not notarized by Apple. The README explains this directly: notarization requires sending binaries to Apple for approval, and the maintainer has chosen not to do that. The Homebrew install handles the quarantine removal automatically, so end users do not need to run `xattr` commands manually.
Other installation options are documented in the official guide at nikitabobko.github.io/AeroSpace/guide#installation. For multi-monitor setups, the guide's section on proper monitor arrangement must be followed before the layout will behave correctly.
Plain Text TOML Configuration and CLI Integration
AeroSpace uses a plain text TOML file for its configuration, making the setup easy to track in a dotfiles repository. The default configuration is published at nikitabobko.github.io/AeroSpace/guide#default-config and shows the full range of available keys. A configuration file specifies key bindings, workspace names, layout defaults, and on-window-detected callbacks.
The CLI-first design means every AeroSpace action is also available as a command, complete with man pages and shell completion scripts. The documented commands are published at nikitabobko.github.io/AeroSpace/commands. This makes it possible to script AeroSpace behavior from shell scripts, status bars, or automation tools without needing to simulate keyboard input.
Shell-like combinators, implemented in the 1.0 blocker list as complete, allow chaining multiple commands with `||`, `&&`, `;`, and `eval`. This means a single key binding can run a sequence of AeroSpace commands conditionally, similar to how a shell script chains commands.
Known Limitations and the Road to 1.0
AeroSpace is in public beta and the README's project status section is explicit about what is needed before a 1.0 release. The largest outstanding item is a core refactoring of the tree data structure from a mutable double-linked structure to an immutable single-linked persistent tree. This refactoring is expected to fix a known stability issue where windows randomly jump to the focused workspace. Until that refactoring lands, that jumping behavior can occur.
Support for macOS native tabs is also blocked on the same refactoring. Global hotkey handling is under investigation, including a possibility to distinguish left and right modifier keys using a different macOS API. Sticky windows, which would let a window appear on all workspaces, are listed as post-1.0.
The accessibility (AX) API is the mechanism AeroSpace uses to move and resize windows. macOS's AX API can block when an application is busy, which historically caused AeroSpace to appear slow in those situations. The README notes this was addressed by implementing a thread-per-application model. Any window that belongs to an application not responding to AX events may still cause delays specific to that application.
AeroSpace vs Yabai as a macOS Tiling Alternative
Yabai is the most widely-referenced alternative macOS tiling window manager and takes a different technical approach. Yabai's full feature set, including moving and resizing windows across spaces and controlling macOS's own Spaces, requires disabling System Integrity Protection. AeroSpace does not require disabling SIP at all; it operates entirely within what macOS allows without the SIP exemption.
The trade-off is scope. Yabai with SIP disabled can interact with macOS Spaces at a deeper level, including floating windows between spaces and controlling Mission Control behavior. AeroSpace instead bypasses macOS Spaces entirely with its own virtual workspace emulation. For users who want their window manager to coexist with native macOS Spaces workflows, Yabai's SIP-disabled mode may offer more integration points.
For users who work on managed machines where disabling SIP is not permitted, or who want to keep SIP enabled for security reasons, AeroSpace is a practical alternative with an i3-style mental model.
Project Governance, License, and Community Support
AeroSpace is MIT licensed and developed primarily by nikitabobko. The README is explicit that the project does not accept GitHub Issues directly. Instead, users are asked to open a GitHub Discussion first and discuss the behavior there before an issue is filed. There are seven discussion channels, including channels for feature ideas, potential bugs, and questions and answers.
The project is in public beta with no committed 1.0 release date. The README's project status section lists the specific items that must be complete before 1.0, which gives a clear picture of what remains. The last push was on 2026-09-21, showing active ongoing work.
The Goodies page at nikitabobko.github.io/AeroSpace/goodies documents community-contributed configurations, integration recipes, and status bar setups. Those configurations are not part of the official repository but are useful references for common setups like integrating AeroSpace with sketchybar or waybar-style status tools.
Editorial conclusion
AeroSpace is a good fit for macOS developers who already think in i3 terms and want a keyboard-driven tiling setup without disabling System Integrity Protection. The right path is to install via Homebrew for automatic updates, read the guide at nikitabobko.github.io/AeroSpace/guide before customizing the config, and verify your monitor arrangement matches the layout required for proper multi-monitor behavior. AeroSpace is in public beta; a known stability issue causes windows to occasionally jump to the focused workspace, and that is tracked for the core tree data structure refactoring listed as a blocker for 1.0. Teams that need stable, production-hardened tooling should wait for 1.0.
Frequently asked questions
How do you use AeroSpace on a Mac?
Install AeroSpace via Homebrew with `brew install --cask nikitabobko/tap/aerospace`, then read the guide at nikitabobko.github.io/AeroSpace/guide to set up your TOML config file with key bindings and workspace names.
How does AeroSpace handle multiple monitors?
AeroSpace follows i3's multi-monitor model: each monitor displays one workspace at a time, and workspaces can be moved between monitors. The guide requires proper monitor arrangement in System Preferences for the layout to work correctly.
How does the AeroSpace tiling manager work?
AeroSpace represents the window layout as a tree where monitors are roots, containers define horizontal or vertical splits, and windows sit at the leaves. New windows are placed automatically according to the current split direction, and all siblings are resized to fill the available space.
How do you install AeroSpace on a Mac?
The preferred method is Homebrew: `brew install --cask nikitabobko/tap/aerospace`. The Homebrew script automatically removes the quarantine attribute, so no manual `xattr` commands are needed.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/nikitabobko-aerospace)