Release /
Karabiner-Elements v15.6.0
Write remapping conditions that calculate values and compare elapsed time.
Before you upgrade to v15.6.0
2 to fixApple vendor events are always processed, even if `ignore_vendor_events` is manually enabled in `karabiner.json`.
Read the evidence
Use Xcode 26 or later to build from source; the documented minimum increased from Xcode 16.3.
Read the evidence
What changed in v15.6.0
Complex rules add expression conditions, expression-based variable updates and a millisecond clock; EventViewer can temporarily disable modifications.
Download the v15.6.0 macOS package from this release.
New things you can do
Adds `expression_if`, `expression_unless`, `set_variable.expression`, `set_variable.key_up_expression`, `system.now.milliseconds` and `from.integer_value`.
Read the evidence
EventViewer adds a toggle to disable all Karabiner-Elements modifications.
Read the evidence
Environment variables can be set via `/Library/Application Support/org.pqrs/config/karabiner_environment`.
Read the evidence
Adds Programmable Buttons usage support, including the VEC USB Footpedal, plus pointing buttons `button33` through `button255`.
Read the evidence
Adds `consumer_key_code::microphone`, `consumer_key_code::selection` and `generic_desktop::system_app_menu`.
Read the evidence
Fixed and improved
New events continue to be added while the Unknown Events tab is open.
Read the evidence
The README now lists both Intel and Apple Silicon support for macOS 26.
Read the evidence
Seeded by @iluxav with Codex, from the release's public sources. Each change links to its evidence.