Claude Traffic Light Miao — Design skill for Claude Code
🚦 学而思小喵掌机 Claude Code status traffic light on an ESP32 handheld (ST7735 160×128) — WiFi/BLE links, on-device permission takeover, LVGL UI.
How to install Claude Traffic Light Miao
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open MiaoWuNYA/claude-traffic-light-miao and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Claude Traffic Light Miao does
🚦 学而思小喵掌机 Claude Code status traffic light on an ESP32 handheld (ST7735 160×128) — WiFi/BLE links, on-device permission takeover, LVGL UI.
Alternatives in Design
- Clui Cc — A lightweight, transparent desktop overlay for Claude Code on macOS 956 ★
- Design Harness — Feed your agent papers and half-formed ideas — it links them into a system design you can defend 211 ★
- Light Mode Theming — Add a light mode to contrast the default dark mode, and build the design system so that 143 ★
README
traffic-light-miao — Claude 状态红绿灯
想让**别的** agent(Codex、Gemini CLI、自研 agent…)也能用这台掌机? 命令接口、发现协议、接入要点都独立成文档了:**[AGENTS.md](AGENTS.md)**(agent 无关)。 本 README 侧重这台设备本身与 Claude Code 的配置。
小喵掌机(ESP32-WROVER-B + ST7735 160×128)上的 Claude Code 状态显示屏。
掌机屏幕显示当前 Claude 状态:
| 状态 | 屏幕显示 | 触发时机 |
|---|---|---|
| 🔴 红 | CLAUDE BUSY |
UserPromptSubmit — Claude 开始工作 |
| 🟡 黄(闪烁 30s) | NEEDS YOU ! |
Notification — Claude 需要你确认 |
| 🟢 绿 | TASK DONE |
Stop — 任务完成 |
| ⚫ 熄灭 | OFF |
空闲/手动关闭 |
底部一行显示**当前任务摘要**(UserPromptSubmit 时把用户输入推过来), 长按 ↑ 切到 IP 地址。右上角是**当前这段任务已经跑了多久**,和 Claude Code 终端里 显示的一致;绿灯亮起时停表,红灯重新亮起时归零重计。
任务完成或需要你操作时,**喇叭滴两声**(GPIO14 无源蜂鸣器,LEDC 驱动)。 声音开关在主界面按 **↑** 进设置菜单里改,存在 NVS。
设置菜单
主界面**短按 ↑** 进设置菜单,`↑↓` 移光标、`A` 改这一项、`B` 退回首页:
| 项 | 值 | 说明 |
|---|---|---|
| 显示 IP | 开 / 关 | 底部一行是否常显 IP(否则显摘要) |
| 声音 | 开 / 关 | 完成任务 / 需要你操作时是否滴两声 |
| 连接 | WiFi / 蓝牙 | 切换连电脑的链路,改完提示 RESTART,手动重启生效 |
| 重设 WiFi | — | 按 A 重扫热点,回到 WiFi 设置界面 |
每次进菜单光标都回到第一项——留在「重设 WiFi」上的话下次进来顺手一按 A 就把热点重扫了,太容易误触。
两种链路:WiFi 或蓝牙
掌机连电脑有两条路,命令集**完全一样**(由固件的 `main/link_cmd.c` 保证语义一致), 在设置菜单里切:
- WiFi:钩子先读缓存 IP,连不上就向
255.255.255.255:4210广播TLMIAO?, 设备回TLMIAO;命令走 HTTP :80。适合掌机和电脑在同一个局域网。 - 蓝牙(BLE):掌机作为 GATT 外设广播
TLMIAO,钩子连上去往 RX 特征写命令、 从 TX 特征收 notify 回执。适合电脑没连热点、或想少配一个 IP 的时候。 用 NimBLE,不配对不加密(和 HTTP 那条路一样是「谁都能发命令」的信任模型, 但 BLE 是附近任何人都能扫到,不像 HTTP 只在自己局域网里)。
钩子会自动跟着走:两条都试,哪条通用哪条,并把结果缓存到 `~/.cache/traffic-light-miao/link`。推状态的命令**丢到后台子进程去发**—— 蓝牙连一次要一两秒,不能卡在你按回车那条路径上。授权等待(`ask`)还是会阻塞, 那本来就是要等你按键的。
使用流程
开机后掌机**不写死 WiFi**,而是在屏幕上选热点:
- 主界面按 UP 进入 WiFi 设置,自动扫描并列出附近热点
(
名称+信号强度,带*表示加密) - UP/DOWN 选热点 → A 确认;开放热点直接连,加密热点进密码界面
- 密码界面:方向键选字符 → A 输入;
Aa切大小写、删除退格、确认连接 - 连上后自动回到主界面,底部显示
http://,并自动记住该热点 (存在 NVS,下次开机自动连,直接跳过设置界面)
按键:
| 键 | 主界面 | 热点列表 | 密码界面 |
|---|---|---|---|
| UP / DOWN | UP = 进设置 | 上下选热点 | 上下换行 |
| LEFT / RIGHT | — | — | 左右换列 |
| A | — | 选中/连接 | 输入字 |
Related Skills
Lvgl UI Designer
LVGL UI Designer Skill for Claude Code - 设计单片机界面的 Claude Code 技能
Lvgl Preview Skill
Claude Code skill: design embedded LVGL (MicroPython) UIs with a headless render→PNG feedback loop. Auto-adapt
App Showcase
Prompt: App / product showcase (3D device + liquid-glass UI)
Cs Frontend Review
Frontend engineering review — walks the 7 Matt Pocock forcing questions (device, LCP target, rendering, bundle
Obsidian Theme Designer
git clone https://github.com/XiangyuSu611/obsidian-theme-designer ~/.claude/skills/obsidian-theme-designer Des
Claude Code Chat Viewer
Offline HTML viewer for Claude Code JSONL session transcripts. Six UI languages, light/dark theme, no backend,
Related Agents
Csi Rf Sensing
Use PROACTIVELY and automatically — do not wait to be asked — for WiFi Channel-State-Information (CSI) human-s
Otgw Device Verify
Runs the OTGW on-device verify loop (build LittleFS/firmware -> flash the bench ESP32-S3 over USB -> verify th
SEO Matomo
Matomo Reporting API analyst. Fetches organic traffic, top landing pages, device / country breakdowns, and ref