Get 1.1.5 or newer — earlier versions stopped swiping after the Mac slept.
threefinger --versionto check,threefinger --reinstallto update.
Swipe with three fingers on the Mac trackpad to change tabs.
Left/right posts Cmd-Shift-[ / Cmd-Shift-]. Works in Safari, Chrome, Firefox, and most tabbed apps.
Move the system gestures to four fingers and you get a full set:
| Fingers | Swipe | Does |
|---|---|---|
| Three | ← / → | Previous / next tab |
| Four | ↑ | Mission Control |
| Four | ↓ | App Exposé |
| Four | ← / → | Full-screen apps |
-
Install and allow threefinger when Settings asks (Accessibility — on newer macOS Device Control and Data Access — and Input Monitoring; for threefinger, not Terminal):
curl -fsSL https://raw.githubusercontent.com/firedev/threefinger/master/install.sh | bash threefinger --check --openOr:
brew install firedev/tap/threefinger && brew services start threefinger -
In Trackpad → More Gestures, move everything to four fingers so macOS doesn’t steal the three-finger swipe:
- Mission Control → Swipe Up with Four Fingers
- App Exposé → Swipe Down with Four Fingers
- Swipe between full-screen applications → Swipe Left or Right with Four Fingers
- Swipe between pages → Off (optional)
Then swipe.
More: firedev.com/projects/threefinger
threefinger --reinstallStops every copy (curl or Homebrew), installs the latest release, re-checks permissions. Re-running the curl one-liner from Setup does the same thing — both are safe to run over an existing install.
Switching from Homebrew to the curl install (one daemon, no rebuild on upgrade):
brew uninstall threefinger
curl -fsSL https://raw.githubusercontent.com/firedev/threefinger/master/install.sh | bashEdit ~/.config/threefinger.json (Karabiner-style). By default, left/right change tabs; you can map any shortcut. Restart after editing:
brew services restart threefinger
# or, if you used the curl installer:
launchctl kickstart -k gui/$UID/com.firedev.threefingergit clone https://github.com/firedev/threefinger && cd threefinger
make install# curl install
curl -fsSL https://raw.githubusercontent.com/firedev/threefinger/master/uninstall.sh | bash
# Homebrew
brew uninstall threefinger
# from a clone
make uninstallUse either Homebrew or the curl installer — not both. Two daemons will fight over the same swipe.
From 1.2.0 the release binary is signed, so upgrades keep the Accessibility grant. Coming from 1.1.x or a Homebrew build (ad-hoc signed, every upgrade), the old entry stops working even though it still shows as on. Select threefinger, click −, then + →
~/.local/bin/threefinger. The daemon restarts itself once granted.
MIT. Tiny Swift tool on MultitouchSupport — a one-feature BetterTouchTool replacement.
