Spacepal for AI coding

If you run Claude Code, Cursor or a browser agent on two or three projects at once, your desktops fill up fast, and the tools keep opening windows somewhere else: a Chrome tab for a login, a new Terminal for a server, and suddenly you are on Desktop 5. Spacepal gives each project its own named Space, keeps the windows those tools open on the Space you are working in, and puts everything back after a restart.

One Space per project or agent

Name your Spaces after what runs there: "api: Claude Code", "web: Cursor", "Research". The name shows in the menu bar and over Mission Control's thumbnails, and ⌥Tab opens an overview of all of them with live previews, so you can see which agent is waiting for you without switching. ⌃⌥1 to ⌃⌥0 jump straight there, with no slide animation.

The developer template sets up a starting layout in one click.

Windows from your tools open where you are

When Claude Code opens a browser to check a page, or Claude in Chrome opens a new window, macOS puts it on whatever desktop Chrome last used, and often takes you there too. Keep these apps with me (Settings, Windows) fixes that for a list of apps you choose. It starts with Chrome, Terminal, iTerm and Claude:

Moving a window that opened on another Space uses a direct window-server move that works on macOS 14.0 to 14.4 and on 26.4 and later. On the versions in between, Spacepal still takes you back to your Space, but the window stays where it opened.

After a restart, every project comes back

Long agent sessions mean a lot of windows across a lot of Spaces. Spacepal saves where each window is every five minutes and at shutdown. After a restart or logout it moves each window back to its project's Space as the apps reopen them, automatically. Your Space names come back too, because they belong to the Space and not to its number. Details in this guide.

Control it from scripts and agents

Every action has a spacepal:// link and an AppleScript command, and an optional local API listens on 127.0.0.1. An agent or a shell script can switch Spaces, rename them or save a layout before a long run. See the URL scheme and AppleScript docs.

Requirements

Related

Written by Dan Bayer, developer of Spacepal. Last updated 2026-10-30.