explaingit

starlight36/vibecoding-signal-light

Analysis updated 2026-05-18

52PythonAudience · vibe coderComplexity · 3/5Setup · moderate

TLDR

Connects a physical desktop traffic light to your AI coding agent so its status is visible at a glance.

Mindmap

mindmap
  root((Signal Light))
    What it does
      Shows agent status as light color
      Aggregates multiple sessions
      Works with Codex and Claude Code
    Tech stack
      Python
      MCP2221A USB GPIO
      Traffic light hardware
    Use cases
      Monitor agent state without terminal
      Get alerted when input is needed
      Test light states without hardware
    Audience
      AI coding agent users
      Hobbyist hardware tinkerers

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

What do people build with it?

USE CASE 1

Glance at a physical light to see if your AI coding agent needs attention

USE CASE 2

Get a flashing red alert when the agent is blocked or waiting for permission

USE CASE 3

Track multiple agent sessions at once without any state being hidden

USE CASE 4

Preview all light states in dry-run mode before wiring up real hardware

What is it built with?

PythonMCP2221AGPIO

How does it compare?

starlight36/vibecoding-signal-lightamaravijayalakshmi216-collab/crop-recommendation-systembiansy000/mda
Stars525252
LanguagePythonPythonPython
Setup difficultymoderatemoderatehard
Complexity3/52/55/5
Audiencevibe coderresearcherresearcher

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

How do you get it running?

Difficulty · moderate Time to first run · 1h+

Requires an MCP2221A USB GPIO adapter and a physical traffic light model.

License terms were not stated in the README.

In plain English

Vibecoding Signal Light is a Python project that connects a small physical traffic light, the kind you can buy as a desktop toy or model, to your AI coding agent. While the agent works, the light on your desk changes color to reflect what the agent is doing, so you can tell at a glance whether you need to pay attention without constantly switching back to the terminal. The light states are kept simple. A steady green means the agent is idle. A slow three-color cycle through green, yellow, and red means the agent is actively working. A flashing yellow means the agent needs you to look at something when convenient. A flashing red means deal with it now, typically because the agent is waiting for permission, has hit a block, or has failed. On the hardware side, the reference build uses an MCP2221A USB GPIO adapter, a small board that lets a Mac or Linux machine control physical pins over USB, wired to a three-lamp traffic signal model. The Python code drives the GPIO pins directly, with no cloud service required. Pin assignments and active-low versus active-high wiring can be adjusted via environment variables. The project includes hook adapters for Codex and Claude Code. An install wizard detects which agents are present and installs the right hook entries. When multiple agent sessions are running at the same time, the system aggregates their states so that a red or yellow alert from one session is never hidden by another session starting work. A background worker keeps the light running while the hooks themselves return quickly. A dry-run mode lets you preview all the light states without any hardware connected, which is useful for testing the hook wiring before committing to a physical build.

Copy-paste prompts

Prompt 1
Walk me through wiring an MCP2221A USB GPIO adapter to a traffic light for this project
Prompt 2
Help me install the Vibecoding Signal Light hooks for Claude Code
Prompt 3
Show me how to run dry-run mode to test the light states without hardware
Prompt 4
Explain how to change pin assignments and wiring polarity through environment variables

Frequently asked questions

What is vibecoding-signal-light?

Connects a physical desktop traffic light to your AI coding agent so its status is visible at a glance.

What language is vibecoding-signal-light written in?

Mainly Python. The stack also includes Python, MCP2221A, GPIO.

What license does vibecoding-signal-light use?

License terms were not stated in the README.

How hard is vibecoding-signal-light to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is vibecoding-signal-light for?

Mainly vibe coder.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.