A tiny Bartender-style menu bar manager for macOS: hide, group, and tighten the spacing of your menu bar icons.
- Hiding — click the chevron to collapse everything left of the
|separator off-screen; click again to bring it back. - Grouping — three zones: always visible, hidden, and an optional always-hidden group (behind a 👁 separator) that stays tucked away even when expanded. ⌥-click the chevron to peek at it.
- Spacing — sliders in Settings for menu bar icon spacing and padding (writes the global
NSStatusItemSpacing/NSStatusItemSelectionPaddingdefaults). - Launch at login — one toggle in Settings, backed by
SMAppService.
- Launch Tray — a
›chevron and|separator appear in your menu bar. - Hold ⌘ and drag any menu bar icon to the left of the
|separator. - Click the chevron to hide/show those icons.
- Right-click the chevron for the menu: reveal the always-hidden group, Settings, Quit.
Spacing changes apply to each app as it restarts; log out and back in to apply them everywhere.
Open tray.xcodeproj in Xcode and run, or:
xcodebuild -project tray.xcodeproj -scheme tray -configuration Release buildRequires macOS with Xcode 26+. The app is un-sandboxed on purpose — sandboxed apps can't write the global spacing defaults.
macOS has no API for moving another app's status items, so Tray uses the same trick as Hidden Bar and Dozer: it plants its own NSStatusItem separators in the bar, and "hiding" stretches a separator to 10,000 pt so everything to its left is pushed off-screen.
