Inspiration

macOS has shipped a two-finger rotation gesture for years, but almost nothing uses it. Changing volume or brightness still means mashing keys or digging through Control Center. Magic Knob turns that unused trackpad gesture into a physical-feeling dial.

What it does

Magic Knob is a macOS 14+ menu bar app that maps two-finger trackpad rotation to system volume or display brightness, and three-finger click to play/pause or custom actions like keyboard shortcuts, media keys, or lock screen. It includes:

  • Menu bar toggle and target picker
  • Sensitivity settings
  • Launch at login
  • Mute/unmute for volume
  • Floating overlay/HUD
  • Automatic updates via Sparkle
  • Website and licensing at magicknob.app

How it works

The app first tries the private macOS multitouch framework to read two trackpad contacts and compute rotation directly. If that is unavailable, it falls back to public AppKit rotation events. Brightness control posts the same system-defined brightness key events macOS uses for keyboard brightness controls. Accessibility permission is requested when synthetic system keys need it.

Built with Codex and GPT-5.6

Codex with GPT-5.6 helped extend Magic Knob during OpenAI Build Week: native gesture handling, controls UI, packaging, update flow, website/checkout work, and release hardening. Pre-existing project note: Magic Knob existed before the Submission Period. Judges should evaluate the Build Week extensions and Codex/GPT-5.6 collaboration documented in the README and demo.

Codex /feedback Session ID

019f601b-3ccf-72a3-90fe-4debac013bba

Challenges

  • No reliable public API for background apps to read raw two-finger trackpad coordinates globally
  • Balancing private multitouch access with a public AppKit fallback
  • Making the dial feel precise while remaining stable as a menu bar utility
  • Shipping signed updates and a clean trial/license path

Accomplishments

  • Native two-finger rotate dial for volume and brightness
  • Three-finger click actions for media and shortcuts
  • Menu bar control surface with sensitivity and launch-at-login
  • Sparkle auto-updates
  • Live product site at magicknob.app

What I learned

Trackpad gesture products live or die on reliability. The useful architecture is layered: try the best available multitouch path, fall back cleanly, and keep the product experience coherent even when the OS APIs are incomplete.

What's next

Broader gesture targets, more custom action presets, deeper accessibility coverage, and continued release polish.

Links

Built With

  • appkit
  • cloudflare-pages
  • codex
  • gpt-5.6
  • polar
  • sparkle
  • swift
  • swiftui
Share this project:

Updates