Skip to content

About

Toggle macOS dark mode and prevent sleep from the menu bar without opening System Settings — plus clean mode and mouse scroll.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

Languages: English | 简体中文

HandySwitch app icon

HandySwitch

Five everyday macOS toggles in one tiny menu bar icon.
Dark Mode · Prevent Sleep · Clean Mode · Reverse & Smooth Mouse Scroll

Latest Release License: MIT Platform: macOS

Instead of cluttering your menu bar with separate apps for keeping your Mac awake, fixing external mouse scrolling, locking the keyboard for cleaning, and toggling dark mode, HandySwitch puts the five switches you actually use every day under a single native menu bar icon.

No feature bloat, no Dock icon, no accounts, and zero telemetry.

Requires macOS 14 (Sonoma) or later (Apple silicon and Intel). Open source under the MIT License.

HandySwitch menu bar panel with five everyday toggles


✨ The 5 Toggles

Toggle What it does
🧹 Clean Mode Blacks out all displays and blocks keyboard/mouse input so you can safely wipe your screen and keys. Hold Esc for 3 seconds to exit.
🌗 Dark Mode Switches macOS system-wide Light and Dark appearance in one click without opening System Settings.
☕ Prevent Sleep Keeps your Mac awake indefinitely or for a preset timer while downloading, rendering, or running long tasks.
🖱️ Reverse Mouse Scroll Reverses external mouse wheel direction while keeping your MacBook trackpad's natural scrolling intact.
🌊 Smooth Mouse Scroll Smooths out notched external mouse wheel steps without needing complex per-app profiles.

📦 Install

Homebrew (recommended)

brew install --cask x0c/tap/handy-switch

Direct download (DMG)

Download the latest signed and notarized HandySwitch-x.y.z.dmg from Releases and drag HandySwitch to /Applications.

HandySwitch includes built-in automatic updates via Sparkle (Right-click menu bar icon → Check for Updates…).

Build from source (Xcode)

Requires Xcode and XcodeGen:

git clone https://github.com/x0c/HandySwitch.git
cd HandySwitch
xcodegen generate
xcodebuild -project HandySwitch.xcodeproj -scheme HandySwitch -configuration Release \
  -destination 'platform=macOS' -derivedDataPath build/DerivedData build
ditto build/DerivedData/Build/Products/Release/HandySwitch.app /Applications/HandySwitch.app
open /Applications/HandySwitch.app

💡 Usage & Permissions

  1. Left-click the menu bar icon to open the switch panel; click outside to dismiss.
  2. Right-click the icon for Open Main Window, Launch at Login, Check for Updates…, or Quit.
  3. On-demand permissions:
    • Clean Mode and Mouse Scroll toggles require Accessibility permission.
    • Dark Mode requires Automation (System Events) permission.
    • Permissions are only requested when you turn on the corresponding toggle. If a switch cannot activate, click the in-app shortcut to open System Settings.
  4. In Clean Mode, hold Esc for about three seconds to exit (the only exit gesture).
  5. Launch at login is off by default. Login launches stay silent (no window).

🍎 More Native macOS & Developer Tools

Project Description
MacResourceMonitor Lightweight menu bar CPU monitor — see which process is eating CPU and terminate it in one click.
NeatWebApp Turn websites into focused macOS apps with a notch launcher and edge-tucking activity Dock.
NeatPaste & NeatEditor Fast, native clipboard manager and minimalist editor for macOS.
Corral Run Claude Code, Codex, and Cursor side by side and continue sessions from native Mac & iPhone clients.
subswap & agentsync Multi-account quota switcher and unified config/MCP sync CLI for AI coding agents.

License

MIT

About

Toggle macOS dark mode and prevent sleep from the menu bar without opening System Settings — plus clean mode and mouse scroll.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages