A native macOS floating panel that shows all your Claude Code sessions grouped by project: what each one is working on, a yellow pulse when one is waiting for your permission, and PR status when idle. Swift/AppKit, zero dependencies, never steals focus. MIT.
No reviews yetBe the first to leave a review for ccglance
Maker
📌
Hi Product Hunt! Maker here.
I built ccglance to scratch my own itch. When you run several Claude Code sessions in parallel, the failure mode is silent: a session hits a permission prompt and just sits there while you're looking at another window. I kept alt-tabbing through terminals only to find a session that had been waiting on a "can I run this command?" prompt for ten minutes.
ccglance is a small always-on-top floating panel for macOS that shows every running session grouped by project:
- What each session is working on, with elapsed time
- A yellow pulse the moment one is waiting for your permission
- Subagents indented under their parent session
- For idle sessions, the CI/review status of the branch's pull request
- Clicking the panel never steals focus from the app you're working in, so it's safe to park in a corner of a second display
How it works is deliberately boring: Claude Code has lifecycle hooks (SessionStart, PreToolUse, Stop, ...). A dependency-free Node script receives those events on stdin and writes one JSON file per session to ~/.claude/ccglance/sessions/. The app polls that directory every 0.5 seconds and renders. No server, no IPC — if either side dies, the other doesn't care, and you can debug the whole pipeline with cat.
Some choices I'm happy with:
- Native Swift/AppKit, no Electron. It's an always-running utility, so CPU and memory footprint mattered. There isn't even an Xcode project — the build is a shell script calling swiftc directly, with zero external packages on both the Swift and Node sides.
- The panel is a non-activating NSPanel. You can click it all day and your editor keeps focus.
- Releases are Developer ID signed and notarized, so Gatekeeper runs it without warnings. Install with "brew install --cask hatoya/tap/ccglance" or grab the zip from GitHub.
One more thing worth mentioning: ccglance itself was built almost entirely with Claude Code — the Swift app, the hook scripts, the README, even the demo GIF. Dogfooding all the way down: I watched ccglance sessions build ccglance in ccglance.
It's free, MIT licensed, macOS 12+ (Apple Silicon prebuilt; Intel builds from source). I'd love feedback — especially from people running bigger parallel-session setups than mine, and on what states you'd want surfaced next.
Report
A quick win would be a global keyboard shortcut to jump straight from the panel into the specific Claude Code session that needs your attention, so you don't have to hunt through the list manually when something is waiting on permission approval.
Report
Maker
@reyhandedemli Love this idea — the panel intentionally never steals focus, so an explicit "jump to the session that needs me" hotkey is the perfect complement. Adding it to the roadmap, thanks! 🦀
Report
Been looking for something like this for ages, the yellow pulse for waiting permissions is genuinely useful and it actually does not steal focus, which is rare for these kinds of overlays.
Report
Maker
@polat0sfi Thank you! The no-focus-steal part was actually the hardest constraint to get right — the whole point is to glance at it, not interact with it. Glad the yellow pulse is earning its keep 🙌
Report
finally a way to keep track of all my claude code sessions without alt-tabbing forever. the yellow pulse for permission prompts is genuinely useful, especially when i have three or four projects going at once.
Report
Maker
@beratbbdj Thanks! The alt-tab shuffle is exactly why I built this 🙏 Glad the yellow pulse is pulling its weight across your projects!
Report
the yellow pulse for permission requests is such a thoughtful touch, hard to miss without being annoying. love that it stays out of the way until you actually need it.
Report
Maker
@kerem425261 Thanks! "Noticeable but not annoying" was the design goal in one sentence, so this comment makes me happy. Glad it works that way in practice!
Report
the yellow pulse for pending permissions is such a thoughtful touch, and keeping it a floating panel that never steals focus is exactly the kind of restraint that makes native macOS apps feel right. really clean execution.
Report
Maker
@nermina7zv Thanks so much! Native macOS apps taught me that the best UI is the one you forget is there until you need it — that's exactly what I was going for. Appreciate the kind words 🙌
A quick win would be a global keyboard shortcut to jump straight from the panel into the specific Claude Code session that needs your attention, so you don't have to hunt through the list manually when something is waiting on permission approval.
@reyhandedemli Love this idea — the panel intentionally never steals focus, so an explicit "jump to the session that needs me" hotkey is the perfect complement. Adding it to the roadmap, thanks! 🦀
Been looking for something like this for ages, the yellow pulse for waiting permissions is genuinely useful and it actually does not steal focus, which is rare for these kinds of overlays.
@polat0sfi
Thank you! The no-focus-steal part was actually the hardest constraint to get right — the whole point is to glance at it, not interact with it. Glad the yellow pulse is earning its keep 🙌
finally a way to keep track of all my claude code sessions without alt-tabbing forever. the yellow pulse for permission prompts is genuinely useful, especially when i have three or four projects going at once.
@beratbbdj
Thanks! The alt-tab shuffle is exactly why I built this 🙏 Glad the yellow pulse is pulling its weight across your projects!
the yellow pulse for permission requests is such a thoughtful touch, hard to miss without being annoying. love that it stays out of the way until you actually need it.
@kerem425261
Thanks! "Noticeable but not annoying" was the design goal in one sentence, so this comment makes me happy. Glad it works that way in practice!
the yellow pulse for pending permissions is such a thoughtful touch, and keeping it a floating panel that never steals focus is exactly the kind of restraint that makes native macOS apps feel right. really clean execution.
@nermina7zv
Thanks so much! Native macOS apps taught me that the best UI is the one you forget is there until you need it — that's exactly what I was going for. Appreciate the kind words 🙌