Remap any button
Bind any of 44 built-in actions to each physical button, per device. Custom shortcuts, app launchers and scripted actions too.
A local-first alternative to Logitech Options+, written in Rust.Remap buttons, drive DPI and SmartShift over HID++.No account, no telemetry.
MIT / Apache-2.0Not affiliated with Logitech

The center of the app, working right here: a mouse diagram with clickable hotspots and a per-button action picker. Choose a hotspot, then bind any of the built-in actions.

schema_version = 4selected_device = "receiver:aabbccdd:slot:1"[devices."receiver:aabbccdd:slot:1".bindings]MiddleClick = "MissionControl"DpiToggle = "CycleDpiPresets"Thumbwheel = "VolumeUp"Forward = "BrowserForward"Back = "BrowserBack"GestureButton = "AppExpose"
config.toml, the file you own.OpenLogi drives your mouse over HID++ directly: buttons, DPI and SmartShift, from a native app that never phones home.
Bind any of 44 built-in actions to each physical button, per device. Custom shortcuts, app launchers and scripted actions too.
Set pointer resolution and cycle your own presets, written straight to the sensor over HID++.
Flip the wheel between ratchet and free-spin, or let it switch automatically by scroll speed.
Per-application overlays that switch the moment your focused app does. Ships in a later release.
Reach devices over a Logi Bolt, Unifying or Lightspeed receiver, a direct Bluetooth pairing, or a USB cable. No receiver required.
A carousel of paired devices with battery percentage and charge state for everything online.
No account, no telemetry, no cloud. Bindings live in a plain TOML file you own, and every change goes straight to the device over HID++.
Signed builds for macOS, Linux and Windows. Pick your platform below. Step-by-step setup lives in the docs.
Homebrew is recommended, or grab the signed .dmg for Apple silicon or Intel.
Packages for amd64 and arm64, with .rpm and Arch .pkg.tar.zst builds also available.
The newest port: signed x86_64 and arm64 installers, validated on Windows 11.
Quit Logi Options+ before launching: the two fight over HID++ access, and only one app can own a receiver at a time. On Linux, the same applies to Solaar.
Something else? Ask in Telegram or open a GitHub issue.