Turn the MacBook notch into a control surface for everything you actually use.
Gojo expands the dead space around your MacBook's notch into a focused, tab-driven HUD. Music, clipboard history, a drag-and-drop file shelf, window management, night shift, and more — all accessed by hovering the notch.
Stage strip of on-screen apps with real app icons, a live monitor preview, and six snap actions (left / right / top / bottom halves, fill, zoom). Cross-app: click any window, snap it. Every chip surfaces its keyboard shortcut underneath.
Now-playing surface that follows whatever's playing — Apple Music, Spotify, browser audio. Scrubs, switches, and renders artwork in the notch's album-art slot.
Recent clipboard items, browsable from the notch. Pin entries, search, paste back into the focused app. Automatically excludes password managers.
Drop files into the notch from anywhere; pick them up later from any other app. Lightweight staging without a Finder tab open.
f.lux-style color temperature control built into the notch. Schedule-based transitions, location-aware sunset detection, and manual pause.
Next-up events and reminders glanceable when the notch opens. Per-calendar and per-list toggling.
Quick selfie view for camera-positioning before a call.
Battery percentage and power status notifications in the notch.
Requires macOS 14 Sonoma or later. Apple Silicon and Intel both supported.
Download the DMG from the latest release, drag Gojo.app to /Applications.
If macOS blocks first launch with a quarantine warning:
xattr -dr com.apple.quarantine /Applications/Gojo.appUpdates are delivered automatically via Sparkle.
git clone https://github.com/rohoswagger/gojo.git
cd gojo
make runmake run builds the Debug app, stops any existing dev process, and launches it. Other useful targets:
| Command | Effect |
|---|---|
make build |
Build only |
make stop |
Kill running dev instances |
make restart |
Stop + build + launch |
make clean |
Remove .build/ artifacts |
You can also open Gojo.xcodeproj in Xcode and run normally.
Gojo asks for a few macOS permissions on first use of the relevant feature:
| Permission | Why |
|---|---|
| Accessibility | Required for the window manager — read and resize windows of other apps via AX. |
| Apple Events | Reading the now-playing track from Music/Spotify. |
| Camera | Optional, for the webcam mirror. |
| Calendar & Reminders | Optional, for displaying upcoming events and reminders. |
Permissions are granted via System Settings → Privacy & Security. The GojoXPCHelper XPC service is the process that holds the Accessibility grant — Gojo proxies AX-trusted work through it.
Defaults — all rebindable in Settings → Shortcuts.
| Action | Shortcut |
|---|---|
| Open clipboard history panel | ⇧⌘C |
| Toggle notch open | ⇧⌘I |
| Toggle sneak peek | ⇧⌘H |
| Toggle microphone | fn-F5 |
| Action | Shortcut |
|---|---|
| Snap to left half | ⌃⌥← |
| Snap to right half | ⌃⌥→ |
| Snap to top half | ⌃⌥↑ |
| Snap to bottom half | ⌃⌥↓ |
| Maximize (fill) | ⌃⌥↩ |
| Zoom (default size) | ⌃⌥Z |
Gojo is two targets that talk over XPC:
Gojo.app— the SwiftUI host app. Owns the notch window, the views, music/clipboard/shelf/webcam managers, and most of the UI logic.GojoXPCHelper.xpc— bundled XPC service. Holds the Accessibility authorization and performs AX-trusted operations (window enumeration, raise, frame set, zoom). Isolating AX in a separate process makes the trust model cleaner and lets the main app run without elevated permissions.
Auto-update is provided by Sparkle via the appcast at https://rohoswagger.github.io/gojo/appcast.xml (EdDSA-signed updates).
Window snaps aren't moving the right window Open System Settings → Privacy & Security → Accessibility, make sure Gojo is checked. The window manager talks through the helper, which needs AX trust.
Clipboard history isn't capturing Gojo only sees changes while it's running. Launch Gojo first, then copy. If you toggle Launch at login in Settings, history starts being captured at boot.
Notch doesn't show on a connected display Settings → General → Display lets you pick which screen Gojo lives on, and whether to mirror it across all displays.
App is blocked on first launch
macOS quarantine; run xattr -dr com.apple.quarantine /Applications/Gojo.app and re-open.
See CONTRIBUTING.md. Issues and PRs welcome — please search existing issues first.
See SECURITY.md for the responsible-disclosure flow.
Gojo is licensed under the GNU General Public License v3.0.
- Third-party licenses — THIRD_PARTY_LICENSES
- Provenance — NOTICE.md
Built on Sparkle, KeyboardShortcuts, Defaults, swift-collections, Lottie, Pow, SkyLightWindow, MacroVisionKit, AsyncXPCConnection, swiftui-introspect, and LaunchAtLogin.