Kanata GUI 1.12.0

Improve keyboard comfort and usability with advanced customization

  • By jtroo
  • Open Source
  • Updated Jul 5, 2026
Download for Windows

About Kanata GUI

Improve keyboard comfort and usability with advanced customization

What's new in 1.12.0

Configuration guide
Link to the appropriate configuration guide version: guide link.

Changelog (since 1.11.0)
Notable behaviour changes:
This note section highlights fixes/improvements that are a higher risk of unintentionally breaking workflows due to changing timings or event sequencing.
- The switch action now triggers the outer switch when triggerd via rpt-any.
- The switch action no longer uses the "action queue" meaning it activates one "tick" earlier, which is relevant for the ordering simultaneous action activations.
- Releases of active chordsv2 actions is now delayed until a pending chordsv2-relevant pressed key resolves to a decision.
Change log
- fix!: make switch repeatable and avoid action queue (#2004)
- fix!: queue custom action presses and releases (#2003)
- fix!(chordsv2): wait for earlier presses before processing releases (#1997)
- feat: add tap-hold-keys action with named key list options (#1990)
- feat: add tap-hold-opposite-hand-release action (#1991)
- feat: add tap-hold--order action (#1970)
- feat: add per-action require-prior-idle override for tap-hold (#1969)
- feat: add tap-hold-require-prior-idle defcfg option (#1960)
- feat: add defhands and tap-hold-opposite-hand (#1955)
- feat(switch): cmd support with init-cmd and cmd-exit
- feat(linux): add virtual to possible output bus type configuration (#1942)
- feat(macos): extend mouse support (#2011) (#2010) (#2005)
- feat(macos): release keyboard grab on lock screen and user switch (#2016)
- feat(macos): add actionable startup diagnostics and clean shutdown (#2015)
- feat(macos): elevate process QoS to mitigate duplicated keystrokes
- feat(macos): add continue-if-no-dev-found
- feat: add TapActivated and HoldActivated TCP server events (#1934)
- fix: enable --list for features == "gui" (#2002)
- fix(simulation): tick with no processing for can_block=true
- fix(tap-hold): add prior-idle to check for idle ticks (#2001)
- fix(macos): improve --list output for BLE devices and bump driverkit to 0.3.0 (#1987)
- fix(macos): don't intercept all devices when include/exclude list has no matches (#1986)
- fix: move layer change check within tick iterations (#1977)
- fix: handle PRESSED_KEYS type difference in clean_state (#1975)
- fix(chordsv2): handle overlapping timeouts correctly (#1961)
- fix(switch): boolean evaluation of not
- fix(linux): avoid permanent busy wait for unpressed keys (#1956)
- fix(linux): add fn key for use with asahi-linux …

Full release notes »

Technical details

Publisherjtroo
Version1.12.0
Release date2026-07-05
LicenseLGPL-3.0
Installer typezip
Architecturex64, arm64
Package IDjtroo.kanata_gui

Install Kanata GUI from the command line

Install with Windows Package Manager
winget install --id=jtroo.kanata_gui -e
Update to the latest version
winget upgrade --id=jtroo.kanata_gui -e
Uninstall
winget uninstall --id=jtroo.kanata_gui -e

cross-platforminterception-driverkeyboardkeyboard-layoutlinuxmacosmousemouse-emulationrustwindows

Kanata GUI version history

  • 1.11.0
  • 1.10.1
  • 1.10.0
  • 1.9.0
  • 1.8.1
  • 1.8.0
  • 1.7.0

Frequently asked questions

Is Kanata GUI free?

Yes. Kanata GUI is free and open-source software released under the LGPL-3.0 license.

What is the latest version of Kanata GUI?

The latest version is 1.12.0, released on Jul 5, 2026.

Is it safe to download Kanata GUI?

The download button links to the official installer published on github.com, the same file Windows Package Manager installs. You can verify the downloaded file by comparing its SHA-256 checksum with 13947ed78cfa3284bfef854e3c542c74ab366236b72fd9f7e039f8638deead9d.

Which Windows versions does Kanata GUI support?

Kanata GUI runs on Windows and is available for 64-bit (x64), ARM64 systems.

How do I uninstall Kanata GUI?

Open Settings › Apps › Installed apps, find Kanata GUI and select Uninstall. From the command line, run winget uninstall --id=jtroo.kanata_gui -e.