Pre-flight checklist
Which part of OpenLogi?
Not sure
OpenLogi version
0.8.3
Operating system
macOS
OS version & architecture
macOS Tahoe 26.6.2
Device model
MX Keys
How is the device connected?
Bluetooth (direct, no receiver)
Affected area(s)
What happened?
I bound key F17 to the "Capture Region" action (confirmed selected/checked in the binding picker under System > Capture Region). Pressing F17 fires a full-screen screenshot instead of opening the interactive region selector.
"Capture Region" was added in #296 as a distinct action from "Screenshot" (System > Screenshot), specifically to send the region-selection shortcut (Cmd+Shift+Ctrl+4 on macOS) instead of the full-screen one. On 0.8.3 / macOS Tahoe 26.6.2, binding to "Capture Region" behaves the same as binding to "Screenshot" — the full screen is captured, with no region selection.
Steps to reproduce
- Open OpenLogi > Devices > (keyboard) > Keys
- Select an unused key (e.g. F17) and bind it to System > Capture Region
- Press the bound key
- Observe: a full-screen screenshot is taken/copied, not a region selection
Expected behavior
Pressing the key should invoke the interactive region-selection capture (equivalent to Cmd+Shift+Ctrl+4), matching the behavior described in #296.
Diagnostics report
### OpenLogi Diagnostics
**App**
- OpenLogi (GUI): v0.8.3 (release)
- Agent: v0.8.3 (connected)
- IPC protocol: GUI 29 / agent 29
- Inventory: ready
- OS: macOS 26.6.2 (arm64)
- Locale: en-UA (UI: follow system)
- Accessibility: granted · Input hook: installed
- Launch at login: no · Menu bar: yes · Update check: off
- Running from: source build (dev)
- Config: schema 7 · 2 configured device(s) · thumbwheel 14
**Assets**
- Source: user cache · Index: loaded (210 models) · User cache: present
- Cache path: ~/.local/share/openlogi/assets · Bundle assets: absent
**Devices (2)**
- G604 Lightspeed — mouse (codename: G604 Wireless Gaming Mouse)
- Connection: Bluetooth (direct) · Online: yes · Battery: 90% (discharging, full)
- Capabilities: buttons=no, pointer=yes, lighting=yes
- Model: 0b024 (model-ids: b024/4085/0000, ext-model: 00)
- Transports: eQuad, BTLE
- Render: g604 · direct
- MX Keys — keyboard (codename: MX Keys Wireless Keyboard)
- Connection: Bluetooth (direct) · Online: yes · Battery: 100% (discharging, full)
- Capabilities: buttons=yes, pointer=no, lighting=no
- DPI: unsupported
- Model: 0b35b (model-ids: b35b/408a/0000, ext-model: 00)
- Transports: eQuad, BTLE
- Render: mx_keys · direct
openlogi list output
inventory read from the running agent)
MX Keys (—, vid=046d pid=b35b)
└─ slot 255 ● MX Keys Wireless Keyboard (keyboard, wpid=?, battery=100% full (discharging))
model_ids=[b35b,408a,0000] ext=00 serial=— unit_id=ae46b4d1 transports=equad+btle
G604 LIGHTSPEED (—, vid=046d pid=b024)
└─ slot 255 ● G604 Wireless Gaming Mouse (mouse, wpid=?, battery=90% full (discharging))
model_ids=[b024,4085,0000] ext=00 serial=— unit_id=56adffdc transports=equad+btle
Logs
2026-09-02T10:50:54.599115Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599000375Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: SendRequest
2026-09-02T10:50:54.599274Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599000375Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: ReceiveResponse
2026-09-02T10:50:54.599316Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599308333Z otel.kind="client" otel.name=Agent.declare_client rpc.trace_id=00}: tarpc::client: SendRequest
2026-09-02T10:50:54.599395Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599308333Z otel.kind="client" otel.name=Agent.declare_client rpc.trace_id=00}: tarpc::client: ReceiveResponse
2026-09-02T10:50:54.599439Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599428250Z otel.kind="client" otel.name=Agent.snapshot rpc.trace_id=00}: tarpc::client: SendRequest
2026-09-02T10:50:54.599580Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599428250Z otel.kind="client" otel.name=Agent.snapshot rpc.trace_id=00}: tarpc::client: ReceiveResponse
(inventory read from the running agent)
MX Keys (—, vid=046d pid=b35b)
└─ slot 255 ● MX Keys Wireless Keyboard (keyboard, wpid=?, battery=100% full (discharging))
model_ids=[b35b,408a,0000] ext=00 serial=— unit_id=ae46b4d1 transports=equad+btle
G604 LIGHTSPEED (—, vid=046d pid=b024)
└─ slot 255 ● G604 Wireless Gaming Mouse (mouse, wpid=?, battery=90% full (discharging))
model_ids=[b024,4085,0000] ext=00 serial=— unit_id=56adffdc transports=equad+btle
macOS permissions (if applicable)
Pre-flight checklist
masterbuild.Which part of OpenLogi?
Not sure
OpenLogi version
0.8.3
Operating system
macOS
OS version & architecture
macOS Tahoe 26.6.2
Device model
MX Keys
How is the device connected?
Bluetooth (direct, no receiver)
Affected area(s)
What happened?
I bound key F17 to the "Capture Region" action (confirmed selected/checked in the binding picker under System > Capture Region). Pressing F17 fires a full-screen screenshot instead of opening the interactive region selector.
"Capture Region" was added in #296 as a distinct action from "Screenshot" (System > Screenshot), specifically to send the region-selection shortcut (Cmd+Shift+Ctrl+4 on macOS) instead of the full-screen one. On 0.8.3 / macOS Tahoe 26.6.2, binding to "Capture Region" behaves the same as binding to "Screenshot" — the full screen is captured, with no region selection.
Steps to reproduce
Expected behavior
Pressing the key should invoke the interactive region-selection capture (equivalent to Cmd+Shift+Ctrl+4), matching the behavior described in #296.
Diagnostics report
openlogi listoutputLogs
2026-09-02T10:50:54.599115Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599000375Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: SendRequest 2026-09-02T10:50:54.599274Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599000375Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: ReceiveResponse 2026-09-02T10:50:54.599316Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599308333Z otel.kind="client" otel.name=Agent.declare_client rpc.trace_id=00}: tarpc::client: SendRequest 2026-09-02T10:50:54.599395Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599308333Z otel.kind="client" otel.name=Agent.declare_client rpc.trace_id=00}: tarpc::client: ReceiveResponse 2026-09-02T10:50:54.599439Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599428250Z otel.kind="client" otel.name=Agent.snapshot rpc.trace_id=00}: tarpc::client: SendRequest 2026-09-02T10:50:54.599580Z DEBUG RPC{rpc.deadline=2026-09-02T10:51:04.599428250Z otel.kind="client" otel.name=Agent.snapshot rpc.trace_id=00}: tarpc::client: ReceiveResponse (inventory read from the running agent) MX Keys (—, vid=046d pid=b35b) └─ slot 255 ● MX Keys Wireless Keyboard (keyboard, wpid=?, battery=100% full (discharging)) model_ids=[b35b,408a,0000] ext=00 serial=— unit_id=ae46b4d1 transports=equad+btle G604 LIGHTSPEED (—, vid=046d pid=b024) └─ slot 255 ● G604 Wireless Gaming Mouse (mouse, wpid=?, battery=90% full (discharging)) model_ids=[b024,4085,0000] ext=00 serial=— unit_id=56adffdc transports=equad+btlemacOS permissions (if applicable)