by m1ckc3s
Menu bar status indicator for Claude Code
# Add to your Claude Code skills
git clone https://github.com/m1ckc3s/claude-status-barGuides for using cli tools skills like claude-status-bar.
Last scanned: 6/28/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-06-28T07:51:28.200Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}claude-status-bar is an open-source cli tools skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by m1ckc3s. Menu bar status indicator for Claude Code. It has 657 GitHub stars.
Yes. claude-status-bar passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/m1ckc3s/claude-status-bar" and add it to your Claude Code skills directory (see the Installation section above).
claude-status-bar is primarily written in Swift. It is open-source under m1ckc3s on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other CLI Tools skills you can browse and compare side by side. Open the CLI Tools category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh claude-status-bar against similar tools.
No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
A tiny macOS menu bar app that shows Claude Code's live status: an animated Claude icon while it's thinking or running a tool, a yellow dot when it's awaiting your permission, and the elapsed time of the current turn. Lightweight, no window, no dock icon, no usage dashboards.
Built so you can tab away during a long "thinking" stretch and still see, at a glance, whether Claude is working, waiting on you, or done.
brew install --cask claude-status-bar && open -a "Claude Status Bar"
The one launch at the end matters: it wires up the Claude Code hooks automatically. After that it starts itself whenever Claude Code runs.
Already using the app from the DMG? The same command switches you to Homebrew. Your settings and hooks carry over, and the old copy cleans itself up on first launch. Full details, edge cases, and the tested upgrade matrix: HOMEBREW.md.
[!IMPORTANT] Updated (or installed) mid-session? Sessions already open appear the next time they do something (a prompt or a tool call). Starting a new
claudesession also works.
Signed and notarized by Apple
ClaudeStatusBar.dmg from Releases.The menu tells you when an update is ready. Installed via brew, it shows Update via brew with a copy button (paste the command in your terminal); it appears once Homebrew can actually deliver the new version, which can lag a release by up to a day. Installed via DMG, Update available opens the releases page, plus a one-click Switch to Homebrew option.
Or just run brew upgrade --cask claude-status-bar (brew), or download the latest DMG and drag it into Applications (manual). Hooks refresh themselves on the next launch; nothing to run by hand. Upgrading from 0.3.x via DMG? Launch the app once after dragging, that's what retires the old-named copy (details).
1m 1s timer.Editing, Reading, Running command, Using tool, …).Everything is controlled from the menu:
1m 1s clock.Manifesting…, Percolating…) in place of Thinking…, like Claude Code (on by default).| Surface | Tracked? |
|---|---|
| Claude Code CLI (terminal) | ✅ |
| Claude Code Desktop — Code tab | ✅ |
| Cursor (Claude Code extension) | ✅ |
| Claude Desktop — Chat/Cowork tab | ❌ |
Multi-session support. When several Claude Code sessions run at once (multiple terminals, or a terminal plus the desktop app), the menu bar surfaces the highest-priority one: a session awaiting your permission is never hidden behind one that's thinking. The dropdown lists every live session. Precise per-tab focus is in progress: issue #19 →.
[!NOTE] You don't open this app; it opens itself when a Claude Code session starts, and quits when none is running. The only manual launch is the very first one after install, to set up the hooks. Opened by hand with no session active, it quits again after a few seconds. That's normal.
The app is stateless. Claude Code fires hooks as it works; the app polls those updates and aggregates them across every live session into a single icon, a permission dot if one needs you, animating if any session is working, resting when all are idle. It launches itself when Claude Code opens and quits when nothing's running, so there's nothing to manage.
The installer merges its hooks into ~/.claude/settings.json (backing it up first), and the app's only network activity is a once-a-day update check against GitHub's and Homebrew's public APIs (details).
See Troubleshooting
node "/Applications/Claude Status Bar.app/Contents/Resources/uninstall.js" # removes only our hooks
brew uninstall --zap claude-status-bar # removes the app + every file it created
Installed manually instead of via brew? Skip the second line and drag the app to the Trash.
I built this for myself, then open-sourced it because other people might find it handy too, and I'm genuinely thrilled that so many of you do. An extra thank-you to everyone who went the extra mile and contributed code, fixes, and ideas.
This is an unofficial, open-source side project. It is not affiliated with, endorsed by, or sponsored by Anthropic. "Claude" and the Claude spark logo are trademarks of Anthropic, used here nominatively. This project is MIT licensed, but that covers the source code only and conveys no rights to Anthropic's trademarks or brand.
If I'm violating or impeding your trademark, Contact me on X (@mickces) This is a free side project; I'm not monetizing it.
MIT