BenchBar: local Frappe benches on macOS, with a menu bar app

Hello all,

BenchBar is for Frappe developers on a Mac. It sets up a local bench, keeps it running in the background, and tells you what is wrong when it breaks.

Most Frappe setup guides still assume Linux, and a lot of us build on Macs now. This is meant to close that gap.

What it does:

  • benchbar install sets up a bench, a site and all dependencies via Homebrew. No Docker.
  • The bench runs under launchd. It stays up after you close Terminal, comes back after a reboot, restarts after a crash.
  • benchbar doctor names what is broken and the fix. benchbar repair applies it with a backup first. It knows about CleanMyMac and Mole deleting env/ and node_modules.
  • benchbar adopt for a bench you already have. v15 and v16 side by side.
  • Menu bar app: start, stop, logs, health, sites and apps per bench.

A few things I wanted for myself:

  • benchbar pull host:site copies a production site to a local one, with email muted and the scheduler paused.
  • Team profiles, so a new teammate gets the same bench on day one.
  • benchbar mcp lets Claude Code or Cursor see and drive your benches. It can read, start, stop and add apps. It cannot repair, install or run anything with sudo.
  • benchbar report makes a diagnostics zip with secrets and paths stripped, for bug reports.
  • The menu bar icon is a little runner. It sleeps when the bench is stopped, jogs when it is up, runs faster under load, and trips when it crashes. You can draw your own.

Install: brew install askysh/tap/benchbar askysh/tap/benchbar-app

Docs: https://benchbar.akashmishra.com
Code: GitHub - askysh/benchbar: Local Frappe and ERPNext dev benches on macOS: a CLI that runs them under launchd and a menu bar app to watch them · GitHub

Why Mac only: it is built on launchd and a native menu bar app. Linux already has a good bench setup, and for Windows there is my WSL setup at askysh/frappe_wsl_dev_server. Local development only, not servers.

Thanks to @aa_prashant for the port planning across benches and the folder scan that finds existing benches. I myself used Claude Code for much of the code generation, and the decisions (or future bugs) file logs why things are the way they are.

It wraps the current bench. If the new Bench Pilot becomes the default, I want BenchBar to run on top of it.

Apple Silicon only for the app. Try it and post issues here or on GitHub.

Thanks @Varun. Checked it out, the TUI and marketplace integration look amazing!! BenchBar comes at it from a different side though, it’s a small menu bar app that sets up and looks after a normal bench, rather than bundling everything into one install.

Wish I’d found vybench earlier tbh. I’m only about a year into Frappe and getting a local setup working (and keeping it working) was the hardest part for me. That’s really why I built BenchBar.

I wanna plan and add vybench support so BenchBar can pick them up as well. Would love to swap notes sometime!

Thanks @askysh . Really appreciate your time. Vybench was built upon community request just couple of months ago.

Reachout if you need any assistance.