# Karabiner-Elements

Karabiner-Elements is a powerful tool for customizing keyboards on macOS

Repository: https://github.com/pqrs-org/Karabiner-Elements
Canonical: https://ross.abutalabs.com/products/karabiner-elements
Homepage: https://karabiner-elements.pqrs.org/
Language: C++
License: Unlicense
License Family: permissive
Topics: macos, keyboard
Last push: 2026-08-27T00:08:27+00:00
Link (homepage): https://karabiner-elements.pqrs.org/
Link (site_page): https://karabiner-elements.pqrs.org/docs/privacy
Link (site_page): https://karabiner-elements.pqrs.org/docs/pricing
Link (site_page): https://karabiner-elements.pqrs.org/docs/releasenotes
Link (site_page): https://karabiner-elements.pqrs.org/docs/manual/configuration/configure-simple-modifications

## Health v2 (maintenance only)
Score: 92/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 79, longevity 100
- inputs: {"age_days": 3705, "days_push": 7, "days_rel": 60, "gap_med": 46.0, "n_releases_24m": 11}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 22681, forks 933 (observed 2026-08-28T04:11:33.915227+00:00)

## What it is
Karabiner-Elements is a powerful, open-source keyboard customizer and key remapper for macOS, offering both simple key swaps via a GUI and highly flexible condition-based complex modifications defined in JSON. It captures keyboard input events at a low level and rewrites them per user-defined rules, with a large library of community-maintained predefined rules.

## Use cases
- remap caps lock to escape on macOS
- swap command and control keys on a Mac keyboard
- use vi or emacs key bindings system-wide
- disable the built-in keyboard when an external keyboard is connected
- change keys only in specific applications
- map mouse buttons or trigger shell commands from key presses
- fix keyboard shortcuts after switching to an external PC keyboard

## When to choose
- you need deep, condition-based key remapping on macOS beyond what System Settings offers
- you want to import community rules like Emacs/Vi bindings or mouse keys
- you prefer a free, open-source tool with no telemetry of your keystrokes
- you need per-device, per-app, or input-source-specific key behavior

## When to avoid
- you are on Linux or Windows - it is macOS-only
- you only need trivial remapping that macOS built-in settings already cover
- you cannot grant Accessibility/Input Monitoring permissions due to managed device policies

## Facets
- artifact type: application
- maturity: stable
- function: developer-tools, configuration-management, gui
- domain: operating-systems, developer-tools, accessibility
- platform: -
- tags: keyboard-remapping, key-customization, complex-modifications, input-event-modification, keyboard-driver, macos

## Member repositories
- pqrs-org/Karabiner-Elements (main) score 92
- pqrs-org/KE-complex_modifications (plugin) score 77

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:33.915227+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T16:56:56.707070+00:00, confidence not recorded.
  - readme: https://github.com/pqrs-org/Karabiner-Elements (fetched 2026-08-28T04:11:33.915227+00:00, sha 59c89d22b393)
  - homepage: https://karabiner-elements.pqrs.org/ (fetched 2026-08-29T07:55:35.461492+00:00, sha 61cf38fb374a)
  - site_page: https://karabiner-elements.pqrs.org/docs (fetched 2026-08-29T07:55:35.471052+00:00, sha 37da7f68b62b)
  - site_page: https://karabiner-elements.pqrs.org/docs/privacy (fetched 2026-08-29T07:55:35.473966+00:00, sha 6095b5fe606b)
  - site_page: https://karabiner-elements.pqrs.org/docs/pricing (fetched 2026-08-29T07:55:35.476109+00:00, sha bda745bf8bca)
  - site_page: https://karabiner-elements.pqrs.org/docs/releasenotes (fetched 2026-08-29T07:55:35.478250+00:00, sha affb5aaee4a8)
  - site_page: https://karabiner-elements.pqrs.org/docs/manual/configuration/configure-simple-modifications (fetched 2026-08-29T07:55:35.482372+00:00, sha 2edb7e654811)
  - site_page: https://karabiner-elements.pqrs.org/docs/manual/configuration/configure-complex-modifications (fetched 2026-08-29T07:55:35.484270+00:00, sha c6e0413e4b20)
  - site_page: https://karabiner-elements.pqrs.org/docs/json (fetched 2026-08-29T07:55:35.485922+00:00, sha 6f5bda3839b1)
- Data as of 2026-08-30T08:39:29.467469+00:00.
