I spent some time trying to see if I could modify SkyLight and Window Manager to tweak Stage Manager behaviors, but this required me to turn off SIP and the experience was janky.
So I built a full replacement that still feels great to use. You can make as many stages as you want, reorder them, and drag windows and apps between them. IMO all the drag-and-drop behaviors work the way you’d expect.
Like several recent window managers, emcee hides windows in an invisible Space (I learned this from yabai), and it works with SIP on. There were lots of little edge cases to get right, e.g:
- Keeping the strip’s previews fresh without hammering Screen Recording
- Cmd-Tab switching to the right stage and putting focus somewhere sensible.
- "Save dialogs", listening for app quit events, etc.
Happy to answer any questions!