gitwtfhub

wtf is capslkagent?

jagenaujagenau/capslkagent — explained in plain English

Analysis updated 2026-05-18

2RustAudience · developerComplexity · 2/5LicenseSetup · easy

TL;DR

A tiny cross-platform tool that turns your Caps Lock LED or keyboard backlight into a status light for whether your Claude Code agent is working, waiting on you, or idle.

Mindmap

mindmap
  root((capslkagent))
    What it does
      LED status light
      Backlight alternative
      Claude Code hooks
    Tech stack
      Rust
      IOKit
      sysfs
    Use cases
      See agent status at a glance
      Blink on notifications
      Avoid caps lock side effect
    Audience
      Claude Code users
      Developers
      CLI power users

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Glance at your keyboard to see if Claude Code is working, waiting, or idle without checking a terminal window

REASON 2

Get a blinking light alert when the agent needs a permission response or has a notification

REASON 3

Use your Mac's keyboard backlight instead of Caps Lock to avoid the caps-lock typing side effect

What's in the stack?

RustIOKitsysfs

How it stacks up

jagenaujagenau/capslkagent132ikl/game1lystore/pay-dcp
Stars222
LanguageRustRustRust
Last pushed2020-12-30
MaintenanceDormant
Setup difficultyeasymoderatemoderate
Complexity2/52/53/5
Audiencedevelopergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 5min

Homebrew install plus one install-hooks command, Linux needs a udev rule to control the LED without root.

MIT license: use, modify, and share freely, including commercially, as long as you keep the copyright notice.

Wtf does this do

Capslkagent turns your keyboard's Caps Lock light, or on Mac laptops the keyboard backlight instead, into a simple status indicator for the Claude Code coding agent. The light is solid on while the agent is working, blinks when it needs your attention such as a permission prompt or notification, and turns off when the agent is idle. This means you can glance at your keyboard and know what your agent is doing without checking the terminal. It is written in Rust and ships as a single small binary with no runtime dependencies, and it works across macOS, Linux, and Windows. You can install it through Homebrew on macOS and Linux, or build it yourself from source with cargo. Once installed, a single command wires it into Claude Code's own hook system, so the light turns on when you submit a prompt, turns off when the agent stops or a session ends, and blinks when Claude Code sends a notification that it needs you. You can also drive the light manually from the command line, turning it on, off, or blinking at a chosen speed, and check its current status. Touching your keyboard or mouse while it is blinking counts as acknowledging the alert and turns the light off again, using the operating system's own idle detection so no extra permissions are needed on macOS and Windows. On Linux, blinking instead stops the next time the light is turned on or off. Each platform works differently under the hood: macOS talks directly to system frameworks to control the caps lock state or keyboard backlight, Linux writes to a system file that drives the LED without affecting typing, and Windows simulates an actual caps lock key press. Because of that, on macOS and Windows using the caps lock light also flips your real caps lock state, so anything you type elsewhere while the agent works will come out in capitals, a limitation the author notes plainly. The project is released under the MIT license.

Yoink these prompts

Prompt 1
Show me how to install capslkagent with Homebrew and wire it into Claude Code's hooks
Prompt 2
Explain how capslkagent detects that I touched the keyboard to stop a blinking alert
Prompt 3
Help me set up the Linux udev rule so capslkagent can control the Caps Lock LED without root
Prompt 4
What is the difference between using --backlight and the default Caps Lock mode on macOS

Frequently asked questions

wtf is capslkagent?

A tiny cross-platform tool that turns your Caps Lock LED or keyboard backlight into a status light for whether your Claude Code agent is working, waiting on you, or idle.

What language is capslkagent written in?

Mainly Rust. The stack also includes Rust, IOKit, sysfs.

What license does capslkagent use?

MIT license: use, modify, and share freely, including commercially, as long as you keep the copyright notice.

How hard is capslkagent to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is capslkagent for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.