Skip to the content
PCBKitNew board
2 layers104.1 × 21.8 mmAndon light strip, the printed circuit board in 3D

Physical desktop status light for Claude Code and Codex CLI. An RP2040 + WS2812B LED strip shows agent state at a glance (green: working, yellow: waiting on you, red: idle), driven by agent hooks through a Python CLI.

Size
104.1 × 21.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
30
Nets
34
Pads
94
Tracks, vias
148, 143
Pours
9
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
23 Jul 2026
Updated
27 Oct 2026

Overview

Andon light strip is an open-source printed circuit board by toadish-frog, from the toadish-frog/agent-andon-light repository on GitHub, published under the MIT licence. It is a 2-layer board of 104.1 × 21.8 mm with 30 parts on 34 nets, routed with 148 tracks and 143 vias.

It is built around the CL05B104KB54PNC, WS2812B-2020-V6 and JVJ16V470M6X8. Its parts include 11 capacitors, 10 diodes and 1 resistor. It belongs with the RP2040 boards of this library.

Main components

3

README

README.md

Agent Andon Light

PyPI Python License: MIT

A physical desktop status light and vibe coding companion for Claude Code / CLI coding agents — so you can walk away while an agent works and still know its state at a glance, instead of staring at a terminal.

Top viewSide viewAngle viewAngle view
ColorMeaning
🟩GreenAgent working
🟨YellowWaiting on you (permission or input)
🟥RedIdle / stopped / session ended
🟩💫Flashing greenCompacting (internal maintenance, still alive)
🟥〜Slow pulsing redStale / disconnected (device hasn't heard from the host in 30 min)

This doc covers "I already have the hardware, how do I get it running." Building the hardware from scratch starts at device/docs/USER-GUIDE.md.

What You Need

  • The assembled device — a Waveshare RP2040-Zero hand-soldered onto the custom PCB, pre-flashed with firmware. Building one from scratch instead? Start at device/docs/USER-GUIDE.md, not here.
  • A data-capable USB-C cable.
  • Python 3 — Linux only. Windows doesn't need it; the installer is self-contained.

Quick Start

1. Plug in the device with a data-capable USB-C cable.

2. Install the host CLI.

OSHow
Linuxpipx install andon-light — see packaging/linux/README.md
WindowsDownload andon-light-setup.exe from Releases and run it — see packaging/windows/README.md

Confirm it can see the device:

txt
andon-light doctor

3. Wire up hooks for your agent:

txt
andon-light install-hooks                 # Claude Code (default)
andon-light install-hooks --agent codex   # Codex CLI

Shows you the exact hook config before touching anything, then merges it into the agent's config file (~/.claude/settings.json for Claude Code, ~/.codex/hooks.json for Codex CLI — or a single project's config for either) once you confirm. Both agents drive the same host CLI and firmware — this is a host-only difference, nothing to reflash. Rationale for each hook mapping: hooks/claude/README.md (Claude Code), hooks/codex/README.md (Codex CLI).

4. Restart your agent (or start a new session) — hook config changes don't apply to a session already running. For Codex CLI specifically, also run /hooks inside it once to trust the new hooks — see hooks/codex/README.md.

From here the light tracks your session automatically — no manual commands needed day to day.

Manual Control

Useful for testing, or to set the light by hand:

CommandEffect
andon-light set working🟩 Solid green
andon-light set waiting🟨 Solid yellow
andon-light set idle🟥 Solid red
andon-light set compacting🟩💫 Chase-fill (compacting)
andon-light heartbeatKeepalive, no color change
andon-light doctorDetect the device and report its port

Troubleshooting

See device/docs/TROUBLESHOOTING.md for the full diagnostic playbook, covering both Windows and Linux.

Documentation

Building & Hardware

Software

Installing

Troubleshooting

Archive

  • 3-Bulb MVP — earlier hardware iteration, not part of the current build

Project Structure

txt
agent-andon-light/
├── device/                 the only ongoing hardware line
│   ├── firmware/            Arduino sketch (C++) — drives the LED strip
│   ├── hardware/             KiCad schematic, PCB, manufacturing files
│   └── docs/                  BOM, user guide, troubleshooting, images
├── host/                   Python CLI (`andon-light`) — talks to the firmware over USB serial
├── hooks/                  Agent hook configs that drive the CLI automatically
│   ├── claude/                Claude Code hooks (settings.snippet.json + README)
│   └── codex/                 Codex CLI hooks (hooks.json + README)
├── packaging/              OS-specific install/build tooling
│   ├── linux/                docs-only install path (pipx, no build step)
│   └── windows/               PyInstaller build + Inno Setup installer
├── scripts/                misc dev/demo scripts
└── archive/                retired hardware iterations, frozen history
    └── led-bulb-mvp/          3-discrete-bulb MVP, superseded by the strip

Status

5 units built and tested — custom PCB, 3D-printed enclosure, firmware, host CLI, and Claude Code hooks all confirmed working end to end. Codex CLI hook support added on top (host-only — no firmware or hardware change involved). Published on PyPI; a one-click Windows installer is available.

Parts

30
QtyValueFootprintReferences
10100nFCapacitor_SMD:C_0402_1005MetricC2, C3, C4, C5, C6, C7, C8, C9, C10, C11
10WS2812B-2020Sean:worldsemi-WS2812B-2020-V6D1, D2, D3, D4, D5, D6, D7, D8, D9, D10
4M3MountingHole:MountingHole_3.2mm_M3_ISO7380MH1, MH2, MH3, MH4
3FiducialFiducial:Fiducial_1mm_Mask2mmFID1, FID2, FID3
1330Resistor_SMD:R_0805_2012MetricR1
1470uFCapacitor_SMD:CP_Elec_6.3x5.4C1
1Waveshare RP2040 ZeroSean:Waveshare RP2040 ZeroWS-RP2040-Zero1

Questions

How big is the Andon light strip PCB?

It measures 104.1 × 21.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Andon light strip use?

30 parts, built around the CL05B104KB54PNC, WS2812B-2020-V6 and JVJ16V470M6X8. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Andon light strip KiCad files?

From the toadish-frog/agent-andon-light repository on GitHub, at the commit this page was made from: the board is device/hardware/pcb/andon_light_strip.kicad_pcb and its schematic device/hardware/pcb/andon_light_strip.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Andon light strip design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 6 layers84 × 98 mmFujiNet-5200-Rev0, the printed circuit board in 3D

    FujiNet-5200-Rev0

    FujiNetWIFI/fujinet-hardware

    Schematics and design files for FujiNet hardware

    145 parts142
  • 2 layers34 × 96 mmGem solder, the printed circuit board in 3D

    Gem solder

    arlenko/gem-solder

    💎 DIY soldering iron controller

    114 parts12CERN-OHL-S-2.0
  • 4 layers70 × 45 mmHand main, the printed circuit board in 3D

    Hand main

    SonDinh23/EMGBand-HandBionic

    Full-stack 6-ch dry-electrode sEMG wearable (ESP32/BLE, 1 kHz/ch, JSON presets) with DC removal + HPF/LPF + Kalman DSP and dual-path gesture control (Amplitude thresholds + 6-ch Radar-shape matching) + Flutter app…

    105 parts5GPL-3.0
  • 2 layers71.5 × 86.2 mmSuper cat game v0, the printed circuit board in 3D

    Super cat game v0

    furballroller/super_cat_game

    A pressure-sensitive LED mat for an ESP32 S3 Devkit clone. This is my first proper hardware project!

    29 parts1
  • 4 layers123.6 × 90.8 mmPlayduino sheep tester, the printed circuit board in 3D

    Playduino sheep tester

    playduino/sheep-tester

    Raspberry Pi 4B HAT for Playduino Sheep EOL factory test

    201 parts1MIT
  • 2 layers25 × 41.5 mmFalling Shapes Earrings, the printed circuit board in 3D

    Falling Shapes Earrings

    Tottocs/Falling-Shapes-Earrings

    Earrings that display a Tetris animation with an LED matrix. PCB designed in KiCad.

    35 parts1
  • 2 layers16 × 89.5 mmV1-ornament board, the printed circuit board in 3D

    V1-ornament board

    adbenson/xmas-ornament-2026

    Programmable dot-matrix LED Christmas tree ornament. See Project Plan.md for full context.

    245 partsGPL-3.0
  • 4 layers120 × 100 mmNts player, the printed circuit board in 3D

    Nts player

    beeb/nts-player

    Standalone web-radio player

    99 partsApache-2.0