Mouser: Open-source alternative to Logitech Options+ for MX Master 3S

What Mouser does
Mouser is a lightweight, open-source alternative to Logitech Options+ for remapping every programmable button on the Logitech MX Master 3S mouse. It runs fully locally with no telemetry, no cloud services, and no Logitech account required.
Key features
- macOS support — full compatibility using CGEventTap for mouse hooking, Quartz CGEvent for key simulation, and NSWorkspace for app detection
- Remaps all 6 programmable buttons — middle click, gesture button, back, forward, horizontal scroll left/right
- Per-application profiles — automatically switches button mappings when you switch apps (e.g., different bindings for Chrome vs. VS Code)
- 22 built-in actions across navigation, browser, editing, and media categories
- DPI/pointer speed control — slider from 200–8000 DPI with quick presets, synced to the device via HID++
- Scroll direction inversion — independent toggles for vertical and horizontal scroll
- Gesture button support — full HID++ 2.0 divert on Bluetooth (no Logitech software needed)
- Battery monitor — reads battery level via HID++ on connect and refreshes every 5 minutes; displayed as a colour-coded badge (green above 70%, yellow 20–69%, red below 20%)
- Auto-reconnection — automatically detects when the mouse is turned off/on or disconnected/reconnected
- Live connection status — UI shows real-time "Connected" / "Not Connected" badge
- Modern Qt Quick UI — dark Material theme with interactive mouse diagram and per-button action picker
- System tray — runs in background, hides to tray on close
- Auto-detect foreground app — polls the active window and switches profiles instantly
- Zero external services — config is a local JSON file, all processing happens on your machine
Supported device
Device: Logitech MX Master 3S
Product ID: 0xB034
Protocol: HID++ 4.5 (Bluetooth)
Connection: Bluetooth (USB receiver also works for basic buttons)
The architecture is designed to be extensible to other Logitech HID++ mice, but only the MX Master 3S is tested.
Default mappings
- Back button: Alt + Tab (Switch Windows)
- Forward button: Alt + Tab (Switch Windows)
- Middle click: Pass-through
- Gesture button: Pass-through
- Horizontal scroll left: Browser Back
- Horizontal scroll right: Browser Forward
Available actions
- Navigation: Alt+Tab, Alt+Shift+Tab, Show Desktop (Win+D), Task View (Win+Tab)
- Browser: Back, Forward, Close Tab (Ctrl+W), New Tab (Ctrl+T)
- Editing: Copy, Paste, Cut, Undo, Select All, Save, Find
- Media: Volume Up, Volume Down, Volume Mute, Play/Pause, Next Track, Previous Track
- Other: Do Nothing (pass-through)
Download and run
No install required. Just download, extract, and double-click.
- Download Mouser.zip (45 MB)
- Extract the zip to any folder (Desktop, Documents, wherever you like)
- Run Mouser.exe
The app will open and start remapping your mouse buttons immediately. The settings window opens showing your mouse diagram, and a system tray icon appears near the clock. Button remapping is active immediately. Closing the window doesn't quit the app — it keeps running in the tray. To fully quit: right-click the tray icon → Quit Mouser.
First-time notes
- Windows SmartScreen may show a warning the first time → click More info → Run anyway
- Logitech Options+ must not be running (it conflicts with HID++ access)
- Config is saved automatically to %APPDATA%\Mouser
Installation from source
Prerequisites:
- Windows 10/11 or macOS 12+ (Monterey)
- Python 3.10+ (tested with 3.14)
- Logitech MX Master 3S paired via Bluetooth or USB receiver
📖 Read the full source: HN LLM Tools
👀 See Also

Developer shares CLI tools that work well with Claude Code
A developer switched from MCPs to CLIs for working with Claude Code, finding that Claude handles CLI commands effectively due to training on shell scripts and documentation. They shared specific CLIs they use daily, including gh, ripgrep, stripe, supabase, vercel, sentry-cli, and neon.

Storybloq: A Project Tracker Living in Your Repo's .story/ Directory Now Has a Mac App
Storybloq, a project tracker that stores tickets, issues, roadmap phases, and session handovers as JSON/markdown inside .story/ in your repo, now has a free Mac app on the App Store. It integrates with Claude Code via CLI and MCP server, and was built entirely using Claude Code.

Lean Context: Claude Code Plugin Converts Verbose Docs to Agent-Optimized Files
A free, open-source Claude Code plugin called Lean Context scans project documentation and removes content AI agents can discover through grepping, keeping only essential non-obvious commands, gotchas, and environment quirks. In a .NET e-commerce project test, it reduced 8 documents totaling 1,263 lines to just 23 lines.

Open-source Specialist Dispatch adapter delegates complex tasks to Claude Code
expert-dispatch is a ~500-line bash script that lets a cheap AI assistant delegate complex coding tasks to Claude Code CLI. It uses commands like dispatch-cc run to send tasks and maintains per-project directories with CLAUDE.md for persistent context.