claudeers.

🔓 unclaimed — this page was auto-generated from GitHub. Are you the creator?

Claim this page →
// Other

traffic_light

traffic light for claude code

// Other[ cli ][ claude ]#claude#other$open-sourceupdated 12 days ago
Actively maintained
98/100
last commit 12 days ago
last release none
releases 0
open issues 0
// install
git clone https://github.com/KURANADO2/traffic_light

Claude Code 红绿灯状态提示器

使用 ESP32-C3 SuperMini 改造一个淘宝红绿灯玩具,让 Claude Code 的状态通过红、黄、绿三颗灯显示:

Claude Code 状态灯光效果
正在工作绿灯慢闪
等待用户确认、授权或选择红灯快闪
当前空闲黄灯常亮
会话结束全部熄灭

硬件

不要同时安装纽扣电池并接入 ESP32 USB 供电。改造后由 ESP32 的 3V3 供电。

接线定义

红绿灯电路板上的灯位定义如下:

灯位颜色ESP32-C3 SuperMini 引脚串联电阻
公共阳极三灯公共正极3V3不需要
L1 负极绿灯GPIO4220Ω
L2 负极黄灯GPIO3220Ω
L3 负极红灯GPIO2220Ω

接线关系:

ESP32 3V3 -> 红绿灯公共阳极

绿灯 L1 负极 -> 220Ω -> ESP32 GPIO4
黄灯 L2 负极 -> 220Ω -> ESP32 GPIO3
红灯 L3 负极 -> 220Ω -> ESP32 GPIO2

固件使用共阳极控制方式:GPIO 输出 LOW 时点亮,输出 HIGH 时熄灭。

烧录固件

Arduino 程序位于:

arduino/traffic_light_test/traffic_light_test.ino

Arduino IDE 设置:

  • Board: ESP32C3 Dev Module
  • USB CDC On Boot: Enabled
  • Port: 选择 ESP32 对应串口
  • 波特率:115200

烧录后,打开串口监视器,行结束符选择 NewlineBoth NL & CR,可以发送以下命令测试:

串口命令灯光效果
working绿灯慢闪
waiting红灯快闪
idle黄灯常亮
off全部熄灭
test红、黄、绿依次点亮
status输出当前状态

制作过程

1. 红绿灯主体

淘宝买来的红绿灯主体。

红绿灯主体

2. 面包板测试

先烧录程序,在面包板上测试 ESP32 能否通过串口命令监听 Claude Code 状态,并正确控制红、黄、绿三颗灯。

面包板测试

查看高清 MP4

3. 准备焊接工具

准备电烙铁、焊锡丝、助焊松香、细导线、220 欧电阻、尖嘴钳,以及电风扇排烟。焊接烟雾有害,建议在通风环境下操作。

焊锡丝建议使用含锡量 >= 63% 的产品,比较容易上锡。

焊接前工具准备

4. 处理较小的焊点

电路板上发光二极管负极焊点比较小,不方便直接焊接。可以用刀小心刮开一点绿油,露出下方铜箔,形成更大的焊接区域。

刮绿油前:

刮绿油前

刮绿油后:

刮绿油后

5. 焊接红绿灯电路板

分别焊接公共阳极、L1 负极、L2 负极、L3 负极:

  • L1 是绿灯。
  • L2 是黄灯。
  • L3 是红灯。
  • L1L2L3 负极出来的导线都需要串联 220Ω 电阻。

推荐每种灯使用对应颜色的导线,后续排查会更直观。图中 L1 绿灯用了红色线、L3 红灯用了绿色线,这是个人焊接失误

另外也可以考虑使用贴片电阻,但操作难度更高,这里使用的是普通直插电阻。

红绿灯焊接

6. 剪掉开发板排针

排针太长,为了能够将开发板贴合在红绿灯外壳背后,需要剪掉 ESP32-C3 SuperMini 的排针。

剪掉排针

7. 穿线并固定开发板

用电钻在红绿灯后壳开一个小孔,将导线穿过去,然后用绝缘胶带固定开发板。

穿线并固定开发板

8. 焊接开发板引脚

开发板侧按以下方式焊接:

ESP32-C3 SuperMini 引脚连接
3V3红绿灯公共阳极
GPIO4L1 绿灯负极,串联 220Ω
GPIO3L2 黄灯负极,串联 220Ω
GPIO2L3 红灯负极,串联 220Ω

开发板引脚焊接

9. 绝缘和固定

缠上绝缘胶带,进一步固定开发板,避免焊点和外壳、其他导线短路。

绝缘胶带固定

10. 最终效果

使用数据线连接电脑和红绿灯,Claude Code 状态会自动反映到灯光上。

最终效果

查看高清 MP4

连接 Claude Code

电脑端桥接脚本位于:

scripts/claude_traffic_light.py

它会自动查找 /dev/cu.usbmodem*,常驻持有 ESP32 串口,并接收 Claude Code Hooks 发送的状态。脚本只使用 Python 标准库,不需要安装第三方依赖。

手动测试:

python3 scripts/claude_traffic_light.py working
python3 scripts/claude_traffic_light.py waiting
python3 scripts/claude_traffic_light.py idle

如果电脑连接了多个 /dev/cu.usbmodem* 设备,可以显式指定 ESP32 串口:

export CLAUDE_TRAFFIC_LIGHT_PORT=/dev/cu.usbmodem11301
python3 scripts/claude_traffic_light.py working

安装 Claude Code Hooks:

python3 scripts/install_claude_hooks.py

安装脚本会读取 claude-hooks.example.json,合并到 ~/.claude/settings.json,并在同目录生成备份:

~/.claude/settings.json.traffic-light-backup

Hook 与灯光的主要映射:

Claude Code 事件发送状态灯光
UserPromptSubmitworking绿灯慢闪
PermissionRequestwaiting红灯快闪
PreToolUse(AskUserQuestion)waiting红灯快闪
Elicitationwaiting红灯快闪
PostToolUseworking绿灯慢闪
Stopidle黄灯常亮
SessionEndoff全部熄灭

运行桥接脚本或 Claude Code 时,应关闭 Arduino IDE 串口监视器,避免两个程序同时占用 ESP32 串口。

诊断日志位于:

/tmp/claude-traffic-light-<uid>.log

注意事项

  • 焊接前务必断开 USB,并取下原来的纽扣电池。
  • 每颗灯的负极需要串联 220Ω 电阻,不要让 GPIO 直接短接 LED。
  • 焊接后建议用万用表蜂鸣档确认没有短路,再连接电脑。
  • 如果灯不响应,先用 Arduino 串口监视器发送 test,确认固件和焊接都正常,再检查 Python 脚本和 Claude Hook。

// compatibility

Platformscli
Operating systems
AI compatibilityclaude
License
Pricingopen-source
LanguagePython

// faq

What is traffic_light?

traffic light for claude code. It is open-source on GitHub.

Is traffic_light free to use?

traffic_light is open-source, so it is free to use.

What category does traffic_light belong to?

traffic_light is listed under data in the Claudeers registry of Claude-compatible tools.

0 views
16 stars
unclaimed
updated 12 days ago

// embed badge

traffic_light on Claudeers
[![Claudeers](https://claudeers.com/api/badge/trafficlight.svg)](https://claudeers.com/trafficlight)

// retro hit counter

traffic_light hit counter
[![Hits](https://claudeers.com/api/counter/trafficlight.svg)](https://claudeers.com/trafficlight)

// reviews

// guestbook

0/500

// related in Other

🔓

符合nature论文学术表达和科研绘图的Skill

// otherYuan1z0825/Python27,143Apache-2.0[ claude ]
🔓

Open source Ghostty-based macOS terminal with vertical tabs and notifications for AI coding agents. Built for multitasking, organization, and programmability.

// othermanaflow-ai/Swift23,559NOASSERTION[ claude ]
🔓

Huashu Design · HTML-native design skill for Claude Code · Claude Code 里 HTML 原生的设计 skill · 高保真原型 / 幻灯片 / 动画 + 20 设计哲学 + 5 维评审 + MP4 导出 · Agent-agnostic

// otheralchaincyf/HTML20,855MIT[ claude ]
🔓

一份通俗易懂、风趣幽默的Java学习指南,内容涵盖Java基础、Java并发编程、Java虚拟机、Java企业级开发、Java面试等核心知识点。学Java,就认准二哥的Java进阶之路😄

// otheritwanger/Java17,140[ claude ]
→ see how traffic_light connects across the ecosystem