A Webstarted Toolbox widget · macOS & Windows

Every repo’s git status, in your menu bar.

Point it at the folders where your code lives and it tells you, for every repo inside them, what you left uncommitted, what you never pushed, and what you still have to pull — with the branch and the remote. One glance instead of cd-ing through fifteen directories.

Already have Toolbox? Open this widget

Free · No account · Uses your own git · Installs from the Toolbox catalog
Many foldersScan several roots at once
Instant on openLocal scan, repos in parallel
Read-onlyIt never commits or pushes
Your own gitNo reimplementation, no service
How it works

Give it your code folders. It finds the repos.

Add one or more parent folders — ~/Code, a clients directory, a scratch directory — one per line. The widget looks one level down inside each of them and treats everything that is a git repo as a row. That mirrors how people actually keep code: a folder full of project folders, not repos nested arbitrarily deep.

Every time you open the popover it re-scans, and the scan is local only: branch, remote, working-tree state and your position relative to the upstream ref you already have on disk. Repos are read in parallel, so this stays instant with dozens of them. The heavy lifting runs in the app’s native core rather than in the widget — the widget is just the list.

  • Several root folders, one per line
  • Finds git repos one level down inside each
  • Re-scans every time you open the popover
  • Click a repo to open it in Finder / File Explorer
  • Pop it out into its own window to keep it visible while you work
Dirty, ahead, behind

“Behind” is the one that needs the network — so it asks first.

Uncommitted changes and unpushed commits are facts about your own disk: they are free to read and always true. Being behind is different — it means the remote moved, and finding that out requires a git fetch, which needs connectivity and credentials. Doing that silently on every popover open would be slow, chatty, and would fail in ways you would never see.

So the widget splits the two. The instant scan tells you the local truth and marks the behind column as possibly stale. Press Refresh and it fetches first, then reports the real numbers. If a remote needs a credential this machine does not have — an Azure DevOps repo, a work account you never set up — it says the fetch failed instead of reporting a comfortable zero.

  • {n} uncommitted — changes in the working tree
  • {n} to push — local commits the remote does not have
  • {n} to pull — commits on the remote you do not have
  • Calls out no upstream, no remote and detached HEAD
  • Says fetch failed (credential?) rather than a false zero
Coming from a git client?

A git GUI shows you one repo. This shows you all of them.

GitHub Desktop, Fork, Sourcetree and Tower are built around the repo you have open: stage this, amend that, resolve a conflict. They are good at it. But the question that actually costs people work is the one they answer worst — which of my repos did I leave in a mess? Answering it means opening each repo, or looping git status in a terminal, which is exactly the chore nobody keeps up.

This widget is not competing with those tools; it sits on top of them. It is the dashboard you glance at before you close the laptop, and it is honest about being read-only. If something needs doing, you click through to the folder and do it in whatever tool you already like.

  • Nothing to keep open — it lives in the menu bar
  • Answers across every repo at once, not one at a time
  • Read-only by design: no accidental commit, push or checkout
  • Useful before a laptop wipe: finds what only exists locally
Git StatusGit GUIs
All repos at a glance
Lives in the menu bar
Flags repos with no remote
Commit / push / merge
Diffs & history browsing
Conflict resolution
Readable by an agent
Part of Webstarted Toolbox

Installed from the catalog, in one click.

Git Status isn’t bundled into the app — it’s a widget in the Webstarted Toolbox catalog. Download Toolbox, open the catalog tab (🧰), press the “+” next to Git Status, and it lands in your Dev tools tab. It’s also readable by an agent through the MCP server. Here are a few of its neighbors:

FAQ

Questions, answered.

How does it know the status of my repos?

It runs your own installed git, the same way you would in a terminal — there is no git reimplementation and no service in the middle. You give it one or more parent folders (for example ~/Code) and it looks one level down inside each of them for anything that is a git repo, then reads the branch, the remote, the uncommitted changes and how far ahead or behind the upstream you are. Repos are read in parallel, so a folder with thirty of them still opens instantly.

Why is “behind” not always up to date?

Because knowing you are behind requires talking to the remote, and that means the network plus your credentials — not something that should happen every time you glance at your menu bar. So the scan that runs when you open the popover is purely local: instant, and truthful about your own machine. When you want the real number, press Refresh and it runs git fetch first. Until you do, the widget labels the behind column as possibly stale rather than quietly showing you a zero.

Is this a git client? Can it commit or push for me?

No, and deliberately so. It is read-only: it never commits, pushes, pulls, stashes or checks anything out. It answers one question — “where did I leave things?” — across all your repos at once, and then gets out of the way. Clicking a repo opens its folder in Finder or File Explorer so you can pick up in whatever tool you actually work in.

What does it show per repo?

The branch, the remote, and whichever of these apply: uncommitted changes, commits to push, commits to pull. A repo with none of them says “up to date”. It also calls out the states that quietly bite you: a branch with no upstream, a repo with no remote at all, and a detached HEAD. If a fetch fails because a remote needs a credential you do not have on this machine, it says that instead of reporting zero.

Can Claude read my repo status?

Yes, if you allow it. Toolbox runs a local MCP server, and Git Status was the first installable widget to expose a tool through it: an agent can ask for the status of your folders, optionally asking for a fetch first. It is opt-in per widget and read-only — the agent gets the same report you see, and cannot commit or push. See the MCP page for how the permission model works.

Does it work on Windows?

Yes — macOS menu bar and Windows system tray, both. It is desktop only: it reads folders on the machine it runs on, which is not something a phone can do. It needs git available on your PATH, which it already is if you use git from a terminal.

Is it free?

Yes. Webstarted Toolbox is free and needs no account, and Git Status is a free widget in its catalog — one click from inside the app installs it, with no app update needed.

Get Webstarted Toolbox

Free to use. Download the app, then add Git Status from the catalog in one click. macOS 12+ and Windows 10+.

Free beta · macOS · Windows (x64) · Signed & notarized · No account required
Keep exploring

One icon, many small tools

This is just one of the widgets in Webstarted Toolbox. Here are the rest:

Keep Awake Stop your Mac from sleeping, on your terms. 📊 LLM Quota Pace your Claude / AI usage against the clock. 🍅 Pomodoro 25/5 focus cycles in your menu bar. Countdown Live countdowns to anything that matters. Clipboard history Your recent copies, one keystroke away. {} Dev tools JSON, Base64, JWT, regex, epoch — offline. Quick Note A scratchpad that autosaves as you type. 🌐 My IP Your public IPv4 and IPv6, copyable, with ISP and location. 📈 System Info CPU, memory and GPU in your menu bar. 🐹 Topos A 30-second reflex game in your menu bar. 💣 Minesweeper Classic minesweeper in your menu bar. 🪙 Crypto Prices Live crypto prices with 24h change, in your menu bar. 💱 Currency Converter Convert currencies with real parallel rates (blue, MEP, CCL). 🌍 World Clocks Several cities' time at once — daylight saving handled automatically. 🔳 QR Generator QR codes for text, URLs, WiFi or contacts — offline. 🔑 Password Generator Strong passwords & passphrases, fully offline. 🌤️ Weather Any city, now + the days ahead — no API key. 🔥 Habit Tracker Daily streaks — don't break the chain. 100% local. 🔤 Text Tools Change case, slugify, count, dedupe — offline. 🎲 Random Picker Pick from a list at random, or roll dice. 🎨 Color Picker Pick a color, copy hex / rgb / hsl / hsv — offline. 🌐 Translator 18 languages from the menu bar — no API key needed. 🔀 Text Diff Compare two texts line by line — 100% local. Cron Wizard Cron expressions in plain English, with the next runs. 🗃️ Dummy Data Lorem ipsum and fake rows in JSON, CSV or SQL. 🔊 Focus Sounds White, pink or brown noise — synthesized, no files. 🔁 Subscriptions What your recurring services cost per month and year. 🧾 Rates & Tax Hourly ↔ yearly, and add or extract tax. Network Fees Ethereum gas and Bitcoin fees, right now. 📣 UTM Builder Trackable campaign links, normalized so GA behaves. 🧮 Calculator Type the calculation, read the result as you go. 🎬 Teleprompter Your script scrolls at the speed you read — in wpm. 📊 Stocks Stocks and ETFs with the day’s change — no API key. 🔥 Fireplace A fireplace generated on the fly — no files, no network. 💼 Job Tracker Your applications, with an OS alarm before each interview. Converter 57 units in 8 categories, converted with zero network. Alarms Clock-time alarms that ring with everything closed. 🗂️ Project Boards Kanban boards with your columns, and a due date that notifies you. 📡 Website Monitor Are your sites up? The code and the latency, from your machine. 📤 Send to another computer Text and images to another computer on your network. 📅 Calendar A month view in your menu bar.