agentlytics
Comprehensive analytics dashboard for AI coding agents — Cursor, Windsurf, Claude Code, VS Code Copilot, Zed, Antigravi…
Automate the arrangement of windows into complex, repeatable layouts using aerospace
git clone https://github.com/CarterMcAlister/aerospace-layout-manager.gitCarterMcAlister/aerospace-layout-managerAutomate the arrangement of windows into complex, repeatable layouts using aerospace.
This project is a script that drives the excellent aerospace window-manager CLI.
You describe a layout once (in JSON), then run the script whenever you need that workspace restored.
size field (e.g. "size": "2/3").display field to correctly calculate window sizes, in a per-layout basis.Install with Homebrew:
brew tap CarterMcAlister/tools brew install aerospace-layout-manager
Or install directly without tapping first:
brew install CarterMcAlister/tools/aerospace-layout-manager
You can also install aerospace-layout-manager with the install script:
curl -sSL https://raw.githubusercontent.com/CarterMcAlister/aerospace-layout-manager/main/install.sh | bash
This script will automatically detect your operating system and architecture, download the correct release binary, and place it in /usr/local/bin.
layouts.json){
"stashWorkspace": "S",
"layouts": {
"work": {
"workspace": "1",
"layout": "v_tiles",
"orientation": "vertical",
"windows": [
{ "bundleId": "com.apple.Safari" },
{
"orientation": "horizontal",
"windows": [
{ "bundleId": "com.jetbrains.WebStorm", "size": "2/3" },
{ "bundleId": "com.apple.Terminal", "size": "1/3" }
]
}
]
}
}
}
Field reference:
tiles, h_tiles, v_tiles, floating, …).horizontal or vertical).{ "bundleId": "…", "size": "n/d" } – an application window, optionally sized as a fraction.{ "orientation": "horizontal" | "vertical", "size": "n/d", "windows": [ … ] } – a nested group, optionally sized as a fraction."numerator/denominator"). In a horizontal context (orientation: "horizontal") the fraction controls width; in a vertical context it controls height.system_profiler SPDisplaysDataType), or a valid alias (main, secondary, external, internal).
size). By default, the layout will be applied to the primary display.Once installed, you can use the aerospace-layout-manager command.
First, add a layouts file to ~/.config/aerospace/layouts.json. See the Configuration section for details.
aerospace-layout-manager --listLayouts # or: aerospace-layout-manager -L
# by long option aerospace-layout-manager --layout work # by short option aerospace-layout-manager -l work # or simply pass the name as a positional argument aerospace-layout-manager work
aerospace-layout-manager --configFile ~/my-layouts/presentation.json -l keynote
stashWorkspace.The logic lives in index.ts and is intentionally kept readable if you need to tweak timings or behaviour.
more like this
Comprehensive analytics dashboard for AI coding agents — Cursor, Windsurf, Claude Code, VS Code Copilot, Zed, Antigravi…
Free open-source Cloudflare R2 desktop client and S3 GUI for macOS, Windows, and Linux. Manage Cloudflare R2, AWS S3, M…
search projects, people, and tags