karabiner

Configure and manage Karabiner-Elements keyboard remaps and profiles via karabiner_cli.

9|3|Updated Jun 29, 2012
One-click install
npx skills add https://github.com/whilp/dotfiles --skill karabiner-whilp
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: karabiner
Source: https://github.com/whilp/dotfiles/tree/main/.claude/skills/karabiner
Command: npx skills add https://github.com/whilp/dotfiles --skill karabiner-whilp

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you configure and manage Karabiner-Elements for macOS keyboard customization, streamlining remaps, complex modifications, and profile management to reduce manual tweaking.

Core Features & Use Cases

  • Key remapping: Create simple or complex mappings (e.g., Caps Lock to Escape) for the built-in keyboard.
  • Profile management: Switch and evolve profiles to suit different workflows.
  • Variables & conditions: Use system variables and device conditions to tailor behavior.
  • CLI-driven workflows: Use karabiner_cli to inspect, edit, lint, and apply changes from the command line.
  • Troubleshooting support: Quick checks and common fixes for non-responsive mappings or conflicting rules.

Quick Start

Remap Caps Lock to Escape in the Default profile and test with EventViewer.

Frequently Asked Questions about karabiner

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I remap keys on macOS with Karabiner?

Key remapping on macOS with Karabiner involves creating mappings in the configuration file or CLI. You define source keys (like Caps Lock) and target keys (like Escape), then apply them to your profile. Karabiner-Elements processes these rules and activates them immediately.

Can I use complex modifications and conditions in Karabiner?

Yes, Karabiner supports complex modifications using variables and device conditions. You can layer rules based on application context, keyboard type, or system state, enabling workflow-specific key behavior without manual profile switching.

How do I manage multiple keyboard profiles in Karabiner?

Profile management in Karabiner lets you create and switch between configuration sets suited to different workflows. Use the CLI (karabiner_cli) or the GUI to activate profiles, and apply conditional rules to auto-select profiles based on connected devices or applications.

What should I do if my Karabiner key mappings aren't working?

Check your mappings using EventViewer to verify key events register correctly. Lint your configuration for syntax errors, verify the profile is active, and confirm no conflicting rules override your remaps. The CLI tools help diagnose and validate rule application.

Can I automate Karabiner configuration changes from the command line?

Yes, karabiner_cli enables CLI-driven workflows to inspect, edit, lint, and apply configuration changes programmatically. This allows scripting and automation of profile switching, rule deployment, and configuration validation without manual GUI interaction.

Does Karabiner work with external keyboards on macOS?

Karabiner supports both built-in and external keyboards. You can create device-specific rules using conditions to apply different mappings based on which keyboard is connected, enabling tailored remaps for each input device.