So I built a wrapper app. It hooks into Claude Code's hook system (Codex and Gemini support is rough) so updates come from events. Falls back to process scanning for CLIs without hooks. There's a popup with a Focus button that jumps to the right terminal.
Tauri 2 + Rust backend, SvelteKit for the popup. Binaries for Linux/macOS/Windows in the releases tab.
https://github.com/sprklai/agenttray
Rough around the edges but I use it every day.