一个硬件项目,使用 ESP32-C3 SuperMini 改装淘宝红绿灯玩具,通过红、黄、绿三颗灯实时显示 Claude Code 或 Codex CLI 的工作、等待、空闲状态。

Stars

19

7 天增长

暂无数据

Fork 数

1

开放 Issue

1

开源协议

暂无数据

最近更新

2026-07-21

AI 仓库情报摘要
FR-AI / ANALYSIS

为什么值得关注

该仓库提供了完整的开源软硬件整合方案,让 AI 编程助手的状态变得直观可见,帮助开发者减少上下文切换,提升开发体验。

适合谁使用

  • AI 编程助手用户(Claude Code、Codex CLI)
  • 硬件爱好者和创客
  • 需要为 CLI 工具添加物理状态指示的开发者
  • 对 ESP32 项目感兴趣的电子入门者

典型使用场景

  • 在开发过程中实时显示 AI 编程助手的运行状态
  • 无需查看终端即可感知助手是否正在工作或等待
  • 通过有趣的动手项目学习基础电子知识和 ESP32 编程
  • 通过串口命令将状态指示器扩展为其他事件驱动的显示工具

项目优势

  • 完整的制作指南,含照片、接线图和焊接技巧
  • 预制的 Arduino 固件和 Python 脚本,安装简单
  • 同时支持 Claude Code 和 Codex CLI,自动配置钩子
  • 仅使用 Python 标准库和常见低成本硬件

使用前须知

  • 需要焊接并手动改造红绿灯玩具
  • 仅支持 Claude Code 和 Codex CLI(无通用钩子接口)
  • 串口不能被其他程序同时占用(如 Arduino IDE)
  • Codex CLI 缺乏会话结束钩子,依赖守护进程跟踪进程

README 快速开始

AI 编程助手红绿灯状态提示器

使用 ESP32-C3 SuperMini 改造一个淘宝红绿灯玩具,让 Claude Code 或 Codex CLI 的状态通过红、黄、绿三颗灯显示。同一时间只需要启用其中一种助手的 hook。

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

硬件

不要同时安装纽扣电池并接入 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 能否通过串口命令监听助手状态,并正确控制红、黄、绿三颗灯。

查看高清 MP4

3. 准备焊接工具

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

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

4. 处理较小的焊点

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

刮绿油前:

刮绿油后:

5. 焊接红绿灯电路板

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

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

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

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

6. 剪掉开发板排针

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

7. 穿线并

项目描述

traffic light for claude code

相关仓库与替代方案

根据分类、Topic 和编程语言匹配的相似项目。

lopopolo
精选
lopopolo GitHub avatar

harness-engineering

Harness Engineering is a methodology for improving coding agent outputs by carefully crafting the environment around them—providing curated context, tools, and executable constraints that encode an organization’s nonfunctional requirements and cumulative lessons.

AI 与机器学习AI 智能体
2,390
slvDev
精选
slvDev GitHub avatar

esp32-ai

A 28.9 million parameter language model runs on an $8 ESP32-S3 microcontroller entirely on-device, generating simple stories at about 9.5 tokens per second.

AI 与机器学习大语言模型
1,960
littledivy
精选
littledivy GitHub avatar

mimic

mimic captures traffic from any iOS or web app and automatically generates a Python client library that lets you call the app's API like a regular library.

AI 与机器学习
1,482