
I built a GNOME Shell extension to monitor live Claude Code session limits and execution status
I wanted a clean, non-intrusive way to monitor my Claude Code CLI tool state and remaining token limits without having to jump back to hidden terminal windows to see if a process was blocked.
I built a GNOME status-bar extension that connects to a local background Python service via WebSockets.
What it displays:
- Real-time session token limits and remaining weekly budget metrics.
- Live execution status changes, specifically highlighting when Claude is Idle, Working, or Waiting for user input.
Setup is designed to be low-friction. The companion Python daemon advertises its endpoint via mDNS, allowing the GNOME extension to automatically discover and connect to the WebSocket stream without needing static IP configurations. If you happen to have a cheap $10 GeekMagic Ultra smart screen or an Android device, the same daemon can broadcast to those endpoints over the local network simultaneously.
The extension code and companion daemon setup are up on GitHub under the MIT license:
https://github.com/henrikekblad/codelight
Feedback on the extension implementation or the WebSocket pipeline is highly appreciated!