OpenLogi

Project Url: AprilNEA/OpenLogi
Introduction: ⚡️A native, local-first alternative to Logitech Options+, written in Rust 🦀 — remap buttons, DPI, and SmartShift over HID++. No account, no telemetry.
More: Author   ReportBugs   OfficialWebsite   
Tags:

[!WARNING] OpenLogi is under active development and not yet stable — features and config may still change. Give the repo a Star ⭐ and Watch 👀 it to get notified the moment a release lands.

English | 简体中文

OpenLogi

OpenLogi

⚡️ A native, local-first alternative to Logitech Options+, written in Rust 🦀
Remap buttons, DPI, and SmartShift over HID++. No account, no telemetry.

twitter telegram GitHub downloads GitHub commit Hits

Options+ ? Try OpenLogi.

Remap buttons, drive DPI and SmartShift, and switch profiles per app — without a Logitech account, telemetry, or the official Options+ install. No cloud, plain TOML config; the only network calls are device-image fetches and an opt-in, off-by-default update check.


OpenLogi talks to Logitech HID++ mice over a Logi Bolt receiver — or a Bluetooth-direct / wired connection — without running Logi Options+. It ships two binaries:

  • OpenLogi GUI — a GPUI desktop app: an interactive mouse diagram with clickable hotspots, a per-button action picker (37 built-in actions plus recorded custom shortcuts), DPI presets, a SmartShift toggle, per-application profile overlays, and a device carousel that switches between paired devices live.
  • OpenLogi CLI — a CLI for headless inventory (list) plus asset-sync and on-device diagnostic subcommands.

Everything is local: bindings live in a plain TOML file, button presses are remapped through the OS event tap, and DPI / SmartShift changes are written straight to the device over HID++.

macOS is supported today; Linux and Windows are coming soon — see Roadmap.

Roadmap

Capability State
Discover Bolt receivers + list paired devices (CLI + GUI)
Bluetooth-direct / wired devices (no receiver)
Battery percentage / charge state ✅ (online devices)
Interactive GUI: carousel, mouse diagram, action picker ✅ macOS
Button remapping via the OS event tap (side Back / Forward today) ✅ macOS
37-action catalog + recorded custom keyboard shortcuts ✅ macOS¹
DPI control + presets + Cycle / Set-preset actions (HID++ 0x2201) ✅ macOS
SmartShift wheel-mode toggle (HID++ 0x2111) ✅ macOS
Per-application profile overlays (auto-switch on app focus) ✅ macOS
Launch-at-login + opt-in update check ✅ (TOML only — no settings UI yet)
Gesture-button per-direction bindings 🟡 configurable; hardware capture pending
Middle / mode-shift / thumbwheel button capture 🟡 configurable; hook owns side buttons only
Linux / Windows event hook ❌ stub (Unsupported)
Unifying receivers ❌ (not yet in hidpp 0.2)

¹ A few actions (e.g. the media keys) currently log their intended event rather than posting it — tracked as a follow-up.

Install

[!IMPORTANT] Quit Logi Options+ first — the two applications fight over HID++ access and only one can own a given receiver at a time.

Download the signed, notarized .dmg from the latest release and drag OpenLogi.app to /Applications.

Or install via Homebrew:

brew install --cask aprilnea/tap/openlogi

To build from source, see DEVELOPMENT.md.

Usage (CLI)

See USAGE.md

Configuration

See CONFIGURATION.md

Developing

See DEVELOPMENT.md

Acknowledgments

License

Dual-licensed under either of

at your option.


Not affiliated with Logitech. "Logitech", "MX Master", and "Options+" are trademarks of Logitech International S.A.

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools
AI Daily Digest