What Kinds of Tasks Can You Automate with Bunch.app?

Updated

Bunch.app automates macOS "context switches" — the setup and teardown work around a mode of work or play. You write a plain text file (a "Bunch") where each line is an app to launch or a system task to perform, and Bunch turns the files in your Bunch Folder into a menu you trigger with a couple of keystrokes. It fits best when your repetitive work is "open these apps, load these files, change these settings, then undo it all later" — not when you need complex conditional logic.

The core mechanism

A Bunch is just a plain text file. Each line tells Bunch to do one thing, such as launching an app or changing a system setting. The site's own example line is:

Audio Hijack (audio input Scarlett Solo) (do not disturb)

That single line launches Audio Hijack, points its audio input at the Scarlett Solo, and turns on Do Not Disturb. The site describes the syntax as "like AppleScript but way easier," and says the Bunch Folder holds all your Bunches, which become a menu for triggering context switches. The actions the site lists are: launch apps, load files, open websites, change settings, and run scripts.

Concrete scenarios the site documents

Preparing to record a screencast

A Bunch hides the Dock, changes your wallpaper, hides Desktop icons, hides all open windows, and loads your screen recording app. When it closes, it can quit apps, restore your wallpaper, unhide the Dock, and show your Desktop icons again. This is the clearest illustration of Bunch's two-way design: setup on launch, cleanup on close.

Getting ready to podcast

A Bunch opens your recording software, starts a new show notes document, and sets your audio inputs and outputs. It can also pause your backups to save bandwidth, and put everything back in place when you're done.

Switching coding projects

A Bunch closes all your Finder windows, opens your project folder, opens iTerm to your project directory and runs a git pull, and opens your project in your text editor or IDE. The site notes it can even integrate with your time tracker to start project timers.

Silencing social media on a schedule

A scheduled Bunch closes Twitter and other social apps during set times. You launch them again when you're ready, just by toggling the Bunch.

Web development

A Bunch opens a project in your editor, starts a local web server, and creates a single-site browser to monitor changes while you work.

How to decide whether it fits your task

If your task looks like… Bunch is a good fit Why
Open a fixed set of apps and files for a mode of work Yes One line per app or file; the Bunch becomes a menu item
Change system settings (Dock, wallpaper, Desktop icons, Do Not Disturb) Yes Settings changes are listed as supported actions
Run a script or shell command as part of setup Yes Scripts are a listed action; the coding example runs git pull in iTerm
Undo everything when you're finished Yes Closing a Bunch can quit apps and restore settings
React to conditions, branch, or loop Not what the site describes The documented model is a flat list of lines per file

Getting started

  1. Create a plain text file for one context — for example Comms.bunch, Code.bunch, or Documentation.bunch, the names the site uses.
  2. Put one action per line: an app name, a file, a website, a setting, or a script.
  3. Keep the file in your Bunch Folder so it appears in the menu.
  4. Trigger it from the menu, and close it to run the teardown actions you defined.

The site states Bunch is free, so there's no purchase decision to weigh before trying it. The main thing to check is whether your repetitive setup work is a fixed list of actions — if so, it maps directly onto a Bunch file.