The Hardware

Ten LEDs, one wire, no dashboard.

How Agent Andon Light turns hook events into light: the board, the protocol, and the firmware (the program that runs directly on the chip).

Idle

What's actually on the desk

A small circuit board (a Waveshare RP2040-Zero), hand-soldered onto a custom PCB, driving 10 addressable WS2812B LEDs behind a 3D-printed diffuser. One USB-C cable carries both power and the serial connection back to your machine. No separate power supply, no wireless pairing, nothing to configure beyond installing the CLI (the command-line program that talks to the board).

Diagram of the board: an RP2040-Zero, a USB-C connector, and a row of 10 addressable LEDs split into a status pixel plus green, yellow, and red sections

One character, one color

The host CLI talks to the firmware over USB serial with about the simplest protocol that could work: a single ASCII character plus a newline. No JSON, no handshake.

Wire protocol

CommandEffectMeaning
GSolid greenAgent working
YSolid yellowWaiting for you
RSolid redIdle / stopped
CChase-fillCompacting
HNo changeHeartbeat

Built to be trusted while you're not looking

A 30-minute watchdog runs on the firmware itself. If it stops hearing from the host, the red section switches from solid to a slow breathing pulse instead of freezing on a stale color. A status light you walk away from has to fail visibly, not silently.

Wired straight into Claude Code and Codex CLI

Claude Code and Codex CLI hooks call the CLI directly, one event at a time, waiting for each call to finish before moving to the next. That's what keeps the light showing the true order of events, even during a turn with a lot of tool calls back to back.

Hook eventColor
SessionStartIdle
UserPromptSubmit / PreToolUseWorking
Notification / PermissionRequestWaiting
PreCompactCompacting
Stop / SessionEndIdle

Nothing hidden

MIT-licensed, start to finish: schematics, firmware, host CLI, and the hook config it installs. The full parts list (bill of materials) and build guide are in the docs if you want to build your own.

View on GitHub

Windows installer is unsigned. Windows shows a warning before you run it, every time, until it gets signed. macOS isn't tested and isn't officially supported. Built and maintained by one person, not a company. Issues and pull requests are welcome on GitHub.