
Control the AeroSpace tiling window manager from Raycast.
The extension uses AeroSpace's CLI as its runtime interface. It does not synthesize keyboard events or require Accessibility permission to trigger your bindings.




aerospace trigger-bindingon-window-detected rule for an app without automatically changing the config filetrigger-binding)The extension detects the aerospace binary in common Homebrew, Nix, and nix-darwin locations. If you installed AeroSpace elsewhere, set AeroSpace Binary Path in the extension preferences to the executable's full path. Run which aerospace in a terminal to find it.
AeroSpace to view the available commandsIn extension preferences, turn off Show Menu Bar Extras to keep only bindings, status, refresh, and preferences in the menu bar. Show Full Bindings remains on by default; turn it off to show only the main mode. The menu bar shows only its icon by default; turn on Show Workspace Name to add the live workspace and binding mode beside it. The menu bar's View What’s New… item opens the extension's Store page, where Raycast shows its native Version History.
The config view deliberately checks two sources. View Full Config opens the complete file returned by aerospace config --config-path. View Loaded Binding Configuration calls aerospace config --get . --json; AeroSpace currently exposes only mode.* values through that command. The health summary compares those bindings and runs reload-config --dry-run --warnings-as-errors. A real reload only runs after that validation succeeds. Shortcut activation prefers the loaded configuration and falls back to the file for older CLI versions.
The menu bar uses aerospace subscribe for live workspace and mode updates when the installed AeroSpace version supports it. The rest of the menu remains usable if live events are unavailable.
The extension supports programmatic access via Raycast deeplinks using launchContext. This allows integration with window tile manager tools like SketchyBar, Alfred, Keyboard Maestro, or custom scripts.
raycast://extensions/limonkufu/aerospace/switchApps?context={\"workspace\":\"all\",\"searchText\":\"AppName\"}
Parameters:
context.workspace - optional focused, visible, or all scope overridecontext.searchText - optional initial search textThis enables external tools to choose a scope or pre-filter the app switcher without displaying argument input prompts. Normal launches open the command immediately and use the last scope selected inside it.
Contributions are welcome. Please open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
View and trigger the shortcuts loaded by AeroSpace
View the complete config file and the bindings loaded by AeroSpace
Browse AeroSpace workspaces and their open apps
View and trigger AeroSpace shortcuts from the menu bar
Find, focus, move, and tile open AeroSpace windows
launchContexttrigger-binding command instead of AppleScript keyboard events/Applicationson-window-detected rule assistant that never rewrites the user's configshell-env (no longer spawns a login shell)getApplications() instead of shelling out to mdfind for app icons@iarna/toml with smol-toml for TOML 1.1 support (aerospace config uses 1.1)[]) showing as blank list items" or \ no longer produce a broken scriptexecFile error when the CLI can’t reach the serverworkspace --auto-back-and-forth 1) and stop treating workspace next/prev as workspace namesaerospace layout tilingAerospace Icon to the extension commandsaerospace not found if installed in a non-standard location (e.g. managed by nix-darwin)@iarna/toml to v3.0.0 which includes support for TOML 1.0.0aerospace itself not being present