# ShiftPlus — Full Product Documentation > Native macOS workspace manager — apps, browser profiles, windows across Spaces, and Macs in one click. > Homepage: https://shiftplus.app > Version: 2.3.3 > Last updated: 2026-10-04 --- ## What is ShiftPlus? ShiftPlus is a native SwiftUI app for macOS that captures and restores your full work setup with a single hotkey, a Raycast command, or a menu-bar click. A "workspace" in ShiftPlus combines apps, window positions, browser profiles, Space (virtual-desktop) assignments, terminal environment variables, AWS profiles, and quick links. ShiftPlus is not a browser extension. It is not Electron. It integrates directly with macOS — including private SkyLight APIs for cross-Space restoration — which is why it ships outside the Mac App Store. It supports both Apple Silicon and Intel Macs, requires macOS 14.6 Sonoma or later, and auto-updates via a signed Sparkle appcast. --- ## Core Capabilities ### 1. Spaces (Virtual Desktops) Restoration ShiftPlus is the only native macOS workspace manager that captures and restores cross-Space layout. When you save or capture a profile, ShiftPlus records: - Which macOS Space (Desktop 1, 2, 3 …) each app was on - Which monitor in multi-display setups - Window arrangement intent (Left Half, Right Half, Top Half, Bottom Half, four quarter corners, Fullscreen, Center, None — 11 arrangements total) - Saved window frame (position + size) in NSScreen coordinates per app per monitor When you open the profile later, ShiftPlus switches through Spaces and launches each app on the correct one. If an app is already running on the wrong Space, a conflict-resolution dialog asks before quit-and-relaunch — skip-by-default UX, nothing moves silently. **Important caveat on macOS 15 Sequoia**: Spaces restoration relies on private SkyLight APIs. Apple's hardened-runtime restrictions on Sequoia mean this feature requires System Integrity Protection (SIP) to be disabled (`csrutil status` should report `disabled`). On macOS 14.6 Sonoma, SIP can stay enabled. Stage Manager replaces macOS's Spaces model and is not supported — turn it off in System Settings → Desktop & Dock. Restoration is typically 2–10 seconds end-to-end depending on how many apps need a cold launch. ### 2. Browser Profile Management — 10 browsers ShiftPlus auto-detects profiles for all major macOS browsers: - **Safari** — bundled profiles supported. - **Arc** — supported. - **Google Chrome** — reads existing profiles from `~/Library/Application Support/Google/Chrome/`; launches with `--profile-directory`. - **Brave** — auto-detects Chromium profiles. - **Microsoft Edge** — auto-detects Chromium profiles. - **Vivaldi** — Chromium-based, supported. - **Opera** — supported. - **Firefox** — profile restore supported; ShiftPlus reopens the selected running profile, restores profile windows, and can optionally capture open tab URLs through a local companion extension. - **DuckDuckGo for Mac** — supported. - **Orion** — supported. For each browser inside a workspace, you can configure: which profile to open, which URLs to launch automatically, window size/position, and which monitor. ### 3. Workspace Capture & Restore `⌘⇧C` snapshots your current screen. Save the capture as a new workspace, or replace an existing workspace after confirming the change: - Detects all open apps, browser windows, and Finder windows - Records window size, position, monitor, window arrangement, browser profile, and Space assignment - Saves as a restorable workspace profile Replacement preserves the workspace's name, icon, color, and list position. Restoration is one click (or one hotkey, or one Raycast command). ### 4. 11 Window Arrangements Per app, per monitor: Left Half, Right Half, Top Half, Bottom Half, Top-Left Quarter, Top-Right Quarter, Bottom-Left Quarter, Bottom-Right Quarter, Fullscreen, Center, None. Combined with saved exact frames, restoration is precise across monitors of different resolutions. ### 5. Raycast Integration — new in v2.0 ShiftPlus 2.0 ships with a companion Raycast extension. Install it from the Raycast Store ( https://www.raycast.com/nghia_luong/shiftplus ) and toggle **Settings → Integrations → Raycast** on inside ShiftPlus. Three commands: - **Switch Workspace** — pick any saved workspace from Raycast root search and activate it. - **Open Quick Link** — pick any quick link across all workspaces. - **Activate Last Workspace** — toggle back to the previously active workspace. How it works (privacy): ShiftPlus writes a small JSON index to `~/Library/Application Support/ShiftPlus/raycast-index.json` containing only workspace names, colors, icons, app counts, and quick links. Environment variables, file paths, terminal commands, and window positions are **never** exposed. The extension makes no network requests. Deleting the index file or disabling the toggle removes the integration cleanly. Requires macOS 14.6+ and Raycast 1.37+. No Pro license required. ### 6. Quick Links Per-workspace URL list with 7 categories: Meetings, Documents, Development, Design, Communication, Productivity, Custom. Pin / auto-open toggles. Supports HTTPS URLs and macOS URL-scheme deeplinks: Spotify playlists/albums, Slack channels (`slack://...`), Zoom meetings, Apple Notes (`mobilenotes://`), Music, Calendar, and any app that registers a URL scheme. ### 7. Terminal Environment Variables — 15+ emulators Per-workspace env injection into the user's terminal. Supported emulators include Terminal.app, iTerm2, Warp, Alacritty, Kitty, WezTerm, Ghostty, Hyper, Tabby, and more. Shell selector for bash, zsh, fish, sh. Secret field masking. Two practical use cases: - **AWS Profile dropdown** — ShiftPlus reads `~/.aws/config` and `~/.aws/credentials` locally and lists every detected profile. Pick one and `AWS_PROFILE` exports into every new terminal in that workspace. - **Per-project env** — bind `.env` content (e.g. database URLs, API keys) to a workspace; new terminals spawn with the right env. ShiftPlus never sends these values anywhere. They live locally and are masked in the UI. ### 8. Global Keyboard Shortcuts - **`⌘;`** — Quick Switch (toggle to the previously active workspace). - **`⌃⌘→`** — Workspace Switcher (cycle through profiles). - **`⌘⇧C`** — Capture current setup. - Per-profile hotkeys via MASShortcut (e.g. `⌥⌘1` for Work, `⌥⌘2` for Personal). - Left/right Command key distinction supported. - Plus hotkeys for New Profile, Settings, Hide, Quit. ### 9. Menu Bar, Radial Menu, and Settings UI - Status-bar icon with profile dropdown and workspaces in the same custom order as the sidebar. - Drag-to-reorder workspaces in the sidebar. - Radial menu for visual profile picking. - Settings window with semantic search. - 12 accent colors per profile (Blue, Green, Orange, Red, Purple, Pink, Yellow, Teal, Indigo, Mint, Cyan, Brown). - Liquid Glass buttons on macOS 15+ with graceful fallback on macOS 14. - Launch HUD with ESC-to-cancel during multi-app launch. - "What's New" sheet with Lottie animations on version bumps. ### 10. iCloud Sync (Pro) - **Where it lives**: Apple CloudKit Private Database — your iCloud, your container `iCloud.com.nghialuong.shiftplus`. ShiftPlus does not run a server. - **Encryption**: end-to-end via Apple. - **Conflict model**: last-writer-wins with content-hash echo suppression. - **Split-file design**: portable layer syncs (profile names, URLs, env vars, app configs); device-specific window IDs + Space maps stay local. - **Pro-gated**: requires an active Pro license. - Toggle: Settings → Sync → Enable iCloud Sync. ### 11. Native macOS Design - SwiftUI with selective AppKit bridges (NSPanel, NSStatusItem) where SwiftUI's surface is too restrictive. - Apple HIG-aligned chrome — no SaaS reskin. - Light mode + dark mode (auto-detects system preference). - Apple Silicon + Intel universal binary. - Code-signed and notarized with the Developer ID program. - Auto-updates via Sparkle 2.7.1 with EdDSA-signed appcast at `https://shiftplus.app/appcast/appcast.xml`. --- ## Pricing ShiftPlus is a **one-time purchase** — no subscriptions, no recurring fees. | Plan | Price (USD) | Devices | License | Includes iCloud Sync | |---|---|---|---|---| | Free Trial | $0 | 1 | 14 days, all features unlocked | Yes | | Pro 1 Device | $24 | 1 | Lifetime | Yes | | Pro 2 Devices | $39 | 2 | Lifetime | Yes | Checkout is handled by Lemon Squeezy. No SDK is bundled in the app — license validation uses raw HTTPS and is network-tolerant (deferred 15s post-launch). Existing customers keep their original price forever (grandfathered). --- ## System Requirements - **Platform**: macOS only — no iPadOS, iOS, Windows, or web companion. - **Minimum macOS**: 14.6 Sonoma. - **Recommended**: macOS 15 Sequoia or later. (Note: Spaces restoration on Sequoia requires SIP disabled; see Capability 1.) - **Architecture**: Universal binary (Apple Silicon + Intel). - **Current version**: 2.3.3 (build 54). - **Not on Mac App Store**: ShiftPlus uses private SkyLight APIs for Spaces restoration, which the Mac App Store does not permit. Download directly from shiftplus.app. --- ## Privacy & Telemetry - **No ShiftPlus server**. No account. ShiftPlus never sees your workspace data on any server. - **Local storage**: workspaces live in `~/Library/Application Support/ShiftPlus/` (split between `syncable_profiles.json` and a device-local `device_overlay.json`). - **iCloud Sync** uses your own iCloud only — Apple handles storage and encryption. - **Reliability diagnostics**: Sentry runs automatically for crashes, errors, performance, and limited product diagnostics. - **Product analytics**: PostHog is optional, off by default, and uses bounded structured properties only after opt-in. - **Sparkle auto-updater**: sends only app version + macOS version to the appcast feed. - **Lemon Squeezy** receives license validation requests (license key + machine identifier) — your purchase email, name, billing data stay with Lemon Squeezy under their privacy policy. Full policy: https://shiftplus.app/privacy-policy/ --- ## Frequently Asked Questions **Is ShiftPlus a subscription?** No. One-time purchase, lifetime license. $24 for one Mac, $39 for two. **Do I need internet to use ShiftPlus?** No. ShiftPlus works fully offline. Internet is only needed for the initial license check and for iCloud Sync (if enabled). **Does iCloud Sync upload my browsing data or env vars to Apple?** iCloud Sync stores workspace configuration in your CloudKit Private Database. It does not touch your browser history, passwords, cookies, or any browsing data. Env var **values** sync as part of the workspace config (because that's what the workspace is) — they remain end-to-end-encrypted by Apple and are never visible to ShiftPlus. If you have particularly sensitive secrets, keep them out of ShiftPlus and use macOS Keychain. **Does it require accessibility permissions?** Yes. ShiftPlus requests Accessibility to control window positions and Automation to launch apps. This is standard for any macOS workspace manager. **Does ShiftPlus work with Stage Manager?** No. Stage Manager replaces macOS's Spaces model and is incompatible. Disable it in System Settings → Desktop & Dock. **Why is Spaces restoration restricted on macOS Sequoia?** Apple tightened hardened-runtime rules around private SkyLight APIs in macOS 15. Restoring across Spaces relies on those APIs, so the feature needs SIP disabled on Sequoia. On Sonoma (14.6+) SIP can stay on. We are tracking Apple's evolution and will rebuild on supported APIs when possible. **Can I switch workspaces from Raycast?** Yes. ShiftPlus 2.0 ships a companion Raycast extension. No Pro required. See "Raycast Integration" above. **Does it support multiple Macs?** Yes. The Pro 2 Devices license activates on two Macs and includes iCloud Sync. Pro 1 Device upgrades to 2 Devices via a separate $39 checkout (refund the $15 delta via support if requested). **What about Firefox?** Firefox is supported. ShiftPlus reopens the Firefox process that owns the selected profile instead of sending URLs to whichever Firefox window is frontmost. An optional local companion extension can add open tab URLs during capture; if you skip it, restore still works and URLs can be added by hand. --- ## Use Cases ### Developers - Per-workspace AWS_PROFILE bound via dropdown — no dotfile edits, no `direnv`, no `aws-vault`. - Per-project `.env` injection into every new terminal in the workspace. - One hotkey opens VSCode at the project folder + iTerm at the repo + Chrome with the staging profile + Slack on the eng workspace Space. - Quick switch between dev, staging, and prod contexts in under 2 seconds. ### Freelancers / Consultants - One workspace per client. Chrome profile, quick links to client docs, Notes folder, Spotify focus playlist all in one switch. - Time-boxed work blocks: Client A workspace in the morning, Client B after lunch. ### Remote Workers - Work (Slack work, Chrome work account, VSCode, work calendar) vs Personal (personal browser, Spotify, messaging). Switch at end-of-day with `⌘;`. ### Power Users / Multi-Monitor - Precise window layouts captured across 2–3 monitors with mixed resolutions. - 5+ virtual desktops, each restored to the right Space on the right display. - Raycast-first workflow: never touch the menu bar, never click the Dock. --- ## Comparison: ShiftPlus vs Alternatives | Feature | ShiftPlus | Workspaces (TheCodingMachine) | Spencer | Manual / DIY | |---|---|---|---|---| | Cross-Space (virtual desktop) restore | ✅ | ❌ | ❌ | ❌ | | Browser profile switching | ✅ 10 browsers, including Firefox profile restore | ❌ | ❌ | Manual | | Window snapping per app | ✅ 11 arrangements | Partial | ✅ | ❌ | | Per-workspace AWS_PROFILE | ✅ Dropdown from `~/.aws` | ❌ | ❌ | Dotfile | | Per-workspace env vars | ✅ 15+ terminals | ❌ | ❌ | direnv | | Workspace capture (`⌘⇧C`) | ✅ | ❌ | ❌ | ❌ | | Raycast integration | ✅ Native extension | ❌ | ❌ | — | | iCloud Sync | ✅ Apple Private DB | ❌ | ❌ | — | | One-time purchase | ✅ $24 / $39 | ✅ | ✅ ~$19.99 | Free | | Native macOS (no Electron) | ✅ | ✅ | ✅ | — | | Mac App Store available | ❌ Direct download | ✅ | ✅ | — | Deeper comparisons: - ShiftPlus vs Spencer: https://shiftplus.app/alternatives/spencer/ - ShiftPlus vs Workspaces: https://shiftplus.app/alternatives/workspaces/ --- ## For Whom - For developers: https://shiftplus.app/for-developers/ - For freelancers / multi-client consultants: https://shiftplus.app/for-freelancers/ - For remote workers: https://shiftplus.app/for-remote-workers/ --- ## Blog & Resources ### Engineering - How ShiftPlus implements macOS Spaces support without requiring users to disable SIP (SkyLight private APIs, switch-then-launch architecture, quit-and-relaunch, Dock-swipe compositor refresh): https://shiftplus.app/blog/macos-spaces-without-disabling-sip/ ### Guides German resources: - German homepage: https://shiftplus.app/de/ - Fensteranordnung auf dem Mac speichern und wiederherstellen: https://shiftplus.app/de/blog/mac-fensteranordnung-speichern/ - MacBook- und Mac-Schreibtische organisieren, benennen, fixieren und nach Neustart wiederherstellen: https://shiftplus.app/de/blog/mac-schreibtische-organisieren/ - Chrome-Profile auf dem Mac wechseln, inklusive Shortcuts und Alternativen: https://shiftplus.app/de/blog/chrome-profil-wechseln-mac/ - How to restore your macOS workspace automatically (apps, windows, Spaces, browser profiles, iCloud sync): https://shiftplus.app/blog/restore-macos-workspace-automatically/ - How to manage multiple Chrome profiles on macOS — create, switch, and route links automatically: https://shiftplus.app/blog/manage-multiple-chrome-profiles-macos/ - ShiftPlus iCloud Sync FAQ — how it works, which plan includes it, security, and troubleshooting: https://shiftplus.app/blog/icloud-sync-faq/ - Switch AWS profiles per workspace on macOS — AWS_PROFILE injected into every terminal, no dotfile edits: https://shiftplus.app/blog/aws-profile-per-workspace/ - How to reopen your apps and windows after a Mac restart — reliable full-workspace restore in one click: https://shiftplus.app/blog/reopen-apps-windows-after-mac-restart/ - How to save and restore window layouts on macOS — every option from snapshot tools to workspace managers: https://shiftplus.app/blog/save-restore-window-layout-mac/ - Why your Mac doesn't remember window positions — causes and fixes for macOS window amnesia: https://shiftplus.app/blog/mac-doesnt-remember-window-positions/ - How to switch Chrome profiles with a hotkey on macOS — every workaround including global shortcuts: https://shiftplus.app/blog/switch-chrome-profiles-hotkey-mac/ - How to open links in a specific Chrome profile on Mac — Velja, Choosy, and context-first fixes: https://shiftplus.app/blog/open-links-in-specific-chrome-profile-mac/ - How to sync your Mac setup across multiple Macs — layer-by-layer guide for desktop and MacBook: https://shiftplus.app/blog/sync-mac-setup-across-devices/ - Mac apps keep opening on the wrong desktop: why macOS Dock "Assign To This Desktop" breaks after restarts and external-display changes, and how ShiftPlus restores Space assignments reliably on every boot: https://shiftplus.app/blog/mac-apps-open-on-wrong-desktop/ - iTerm2 won't restore tabs after a Mac restart: what Session Restoration actually saves vs. what it silently skips (split panes, working directories, SSH sessions), and how ShiftPlus launches a full project terminal on demand in one hotkey: https://shiftplus.app/blog/iterm2-restore-tabs-after-restart/ - Chrome loses windows after a Mac restart when you use multiple profiles: why "Continue where you left off" restores only one profile's window, and how workspace capture brings every profile's windows back: https://shiftplus.app/blog/chrome-restore-windows-after-restart-mac/ - Stage Manager keeps losing your window groups: what Stage Manager remembers vs. forgets (sizes, second-app-in-group, post-restart state), and why switching to Spaces + ShiftPlus gives a layout that survives restarts: https://shiftplus.app/blog/stage-manager-loses-window-layout/ - Mac windows rearrange when you unplug a monitor: why macOS collapses everything to the built-in display and loses positions on re-connect, and how ShiftPlus captures exact multi-monitor layouts and restores them in one hotkey: https://shiftplus.app/blog/mac-windows-rearrange-external-monitor/ - How to stop macOS from rearranging Spaces: the one Mission Control toggle ("Automatically rearrange Spaces based on most recent use") that fixes the daily shuffle, what it can't do, and how ShiftPlus restores which app was on which Space after every restart: https://shiftplus.app/blog/stop-macos-rearranging-spaces/ - How to open multiple apps at once on Mac: four methods — Apple Shortcuts automation, Automator application, a one-line shell script, and ShiftPlus (which also restores windows, Spaces, browser profiles, and terminal env). ShiftPlus is $24 one-time. https://shiftplus.app/blog/open-multiple-apps-at-once-mac/ ### Comparisons - Best macOS workspace manager 2026 — honest roundup of Spencer, BetterStage, Workspaces, Ikuna, and ShiftPlus: https://shiftplus.app/blog/best-macos-workspace-manager-2026/ - 7 Moom alternatives for Mac in 2026 — snapping tools vs full workspace managers: https://shiftplus.app/blog/moom-alternative-mac/ - Rectangle alternatives — when window snapping isn't enough and you need a workspace manager: https://shiftplus.app/blog/rectangle-alternative-workspace-manager/ - 5 Stay alternatives for Mac in 2026: Stay by Cordless Dog remembers window positions per display config but not app context. Alternatives covered: ShiftPlus (full workspace context, $24 one-time), Moom, Rectangle Pro, HiDock, and manual Shortcuts. Best pick if you also want browser profiles + Spaces: ShiftPlus. https://shiftplus.app/blog/stay-app-alternative-mac/ - Moom vs Magnet (2026): Moom ($9.99 one-time) adds custom snap zones, layout snapshots, and keyboard-driven resizing. Magnet ($4.99 one-time) covers basic edge/corner snapping. Rectangle (free) matches Magnet's feature set. Recommendation: Rectangle free unless you need Moom's custom zone geometry. Neither handles apps, Spaces, or browser profiles — that's ShiftPlus ($24). https://shiftplus.app/blog/moom-vs-magnet/ - Moom vs Rectangle Pro (2026): both cost $9.99 one-time. Moom wins on saved layout snapshots (Custom Zoom history). Rectangle Pro wins on precise custom snap zones (drag-to-define areas). Neither restores apps, Spaces, or browser profiles — that requires a workspace manager like ShiftPlus ($24). https://shiftplus.app/blog/moom-vs-rectangle-pro/ - Raycast Window Layouts vs ShiftPlus (2026): Raycast Pro ($8/month) Window Layouts save window positions per app per screen — they don't survive restarts and don't know which apps to launch. ShiftPlus ($24 one-time) captures and restores apps, window positions, browser profiles, terminal env, and macOS Spaces in one hotkey. The two are complementary: ShiftPlus has a free Raycast extension. Best fit: Raycast if you already pay for Pro and only need position memory; ShiftPlus if you need full context restore. https://shiftplus.app/blog/raycast-window-layouts-vs-shiftplus/ - 7 AeroSpace alternatives for Mac in 2026: AeroSpace does i3-style tiling via a config file with its own virtual workspace model. Alternatives by job — tiling: yabai, Amethyst; snapping: Rectangle, Moom; native macOS tiling (Sequoia); Raycast Window Layouts; full workspace context: ShiftPlus ($24 one-time, restores apps, Spaces, browser profiles, terminal env). Best pick if you want workspace switching without a config file: ShiftPlus. https://shiftplus.app/blog/aerospace-alternative-mac/ ### Pages - ShiftPlus vs Spencer comparison: https://shiftplus.app/alternatives/spencer/ - ShiftPlus vs Workspaces comparison: https://shiftplus.app/alternatives/workspaces/ - ShiftPlus vs Ikuna comparison: https://shiftplus.app/compare/shiftplus-vs-ikuna/ - ShiftPlus Raycast integration guide: https://shiftplus.app/integrations/raycast/ - ShiftPlus for developers: https://shiftplus.app/for-developers/ - ShiftPlus for freelancers: https://shiftplus.app/for-freelancers/ - ShiftPlus for remote workers: https://shiftplus.app/for-remote-workers/ - Release notes: https://shiftplus.app/release-notes/ --- ## Integrations - **Raycast** — https://shiftplus.app/integrations/raycast/ - **AWS CLI** — reads `~/.aws/{config,credentials}` locally, no IAM creds touch the network. - **macOS URL schemes** — `shiftplus://` for activate-workspace deeplinks, plus any third-party scheme as a quick link. - **Sparkle** — auto-updates from `https://shiftplus.app/appcast/appcast.xml`. --- ## Download - Latest release: https://shiftplus.app/release/shiftplus-v2.3.3.dmg - Homepage: https://shiftplus.app - Raycast extension: https://www.raycast.com/nghia_luong/shiftplus --- *Last updated: 2026-09-26*