Free & open source · macOS 13+ · Windows · Linux

Keeps your computer awake while the work brews.

A tiny menu-bar barista that takes orders from you, your terminal, and your AI agents. It keeps your Mac or PC awake exactly as long as each one needs, then lets it sleep.

Open the download and drag Barista into Applications. No account. No cloud. No tracking. Just coffee.

Or in Terminal, or ask your AI agent to run it: curl -fsSL https://baristatime.app/install.sh | sh

On Windows or Linux? Barista lives in your notification area or system tray, with the same CLI and agent hooks. Windows (PowerShell): irm https://baristatime.app/install.ps1 | iex. Linux: the same install.sh command. Or grab a download from the latest release.

An espresso machine serving several cups, each with an order ticket: you for one hour, make test, and Claude Code.
In your menu bar

One cup. One click.

The cup lives in your menu bar and shows the time left. Click it for the panel. Commands and agents that are keeping the Mac awake appear underneath, each with its own stop button.

Barista's panel while resting: duration chips for 15 minutes, 1 hour, 4 hours, until stopped, and More, a Keep display on switch, and a Keep awake button.
Pick a size and press Keep awake.
Barista's panel while awake: a 52:12 countdown with a Stop button, plus Claude Code and make test listed as also keeping the Mac awake.
Your timer, plus what Claude Code and make test are brewing.
How it works

Every job gets its own order.

Most keep-awake apps have one big on/off switch. Barista keeps separate orders. Your one-hour timer, a test run, and two Claude Code sessions each keep their own ticket, and one finishing never cancels another.

Separate orders

Each timer, command, app, or agent gets its own session. See them all in one panel and stop any of them on its own.

Made for agents

Connect Claude Code and ChatGPT Codex in one click, or let your agent install and connect Barista itself. Commands and MCP agents check in while they work and are released when they’re done.

Battery protection

On battery, Barista stops keeping the Mac awake at 20% (you can change this). Your work keeps running; it just stops keeping the Mac up.

The everyday stuff

A great keep-awake app first.

You don’t need an agent to use Barista. On its own, it’s a simple, friendly replacement for caffeinate.

🖥️

Display on or off

Keep the screen lit, or keep the Mac running and let the display sleep.

⏱️

Time in the menu bar

A countdown sits next to the cup. Turn it off if you’d rather just see the cup.

➕

Add 15 minutes

Need a little longer? Top up a running timer without starting over.

📦

Until an app quits

Stay awake while an export, download, or render app is open, then sleep.

⌨️

Keyboard shortcut

⌃⌥⌘C toggles your last session from anywhere. You can pick another.

🚀

Launch at login

Starts quietly in the menu bar, ready when you are.

🔔

Done notifications

Optionally get a heads-up when a session ends and the Mac can sleep.

🧾

Recent history

See your last sessions in Settings, including how each one ended.

For Claude Code, ChatGPT Codex & friends

Your agent orders. Barista pours.

Leaving Claude Code or Codex on a long refactor? Click Connect in Settings, or have your agent run the one-line installer. A prompt opens an order, tool calls keep it going, and it closes when the agent finishes (for Claude, once any background commands it left running are done too). Then your Mac can sleep.

  • One-click Claude Code hooks, with a backup of your settings
  • One-click ChatGPT Codex hooks (approve them once with /hooks)
  • Agents can install and connect it themselves: the installer runs barista setup, and llms.txt tells them how
  • barista run -- make test stays awake for exactly that command
  • Built-in MCP server for any agent that speaks MCP
  • If you stop an order, it stays stopped until you start new work
FAQ

Questions at the counter

Is it really free?

Yes. It’s MIT-licensed and open source, with no in-app purchases, accounts, or telemetry.

Does it keep my Mac awake with the lid closed?

No. Barista prevents idle sleep. Closing the lid, choosing Sleep, or a dead battery still put the Mac to sleep. For lid-closed work, connect power and an external display.

How is this different from caffeinate or Amphetamine?

Those have one switch for the whole Mac. Barista tracks who needs the Mac awake and for how long, and ends each one on its own when that job finishes or stops checking in. It also connects to Claude Code and ChatGPT Codex in one click.

Does anything leave my Mac?

No personal data, ever. Agents talk to the app over a private local socket that only your user account can reach. It opens no network port, and history stays on your Mac (the last 20 sessions). The one network request is an optional once-a-day check with GitHub for a newer version. It sends nothing about you, and you can turn it off in Settings. (This website, not the app, counts visits with PostHog.)

Can my AI agent set it up for me?

Yes. Ask Claude Code or Codex to install Barista. It reads llms.txt, asks you first, then runs the one-line installer, which installs Barista and connects Claude Code and Codex. Codex then asks you to approve the new hooks once: type /hooks in Codex and trust Barista’s. Already installed? Run barista setup to connect agents you’ve added since.

How do I get updates?

Barista checks for a new version once a day. When one is out, click Update in its panel: it downloads the update, checks its signature, installs it, and relaunches, and anything that was keeping your Mac awake keeps going. You can also check right away in Settings → Updates.

Is there a Windows or Linux version?

Yes. Barista runs on Windows 10 and 11 and on Linux (x86_64 and arm64) as a coffee cup in the notification area or system tray, with quick timers, your tasks, battery protection, and the same barista CLI, MCP server, and one-click Claude Code and Codex hooks. On Windows, run irm https://baristatime.app/install.ps1 | iex in PowerShell (no administrator rights needed). On Linux, run curl -fsSL https://baristatime.app/install.sh | sh. Linux needs a desktop whose tray supports StatusNotifierItem (KDE, Ubuntu, Xfce, and most others); stock GNOME needs the AppIndicator extension. Without a desktop it runs in the background, and the CLI and hooks still work.

Barista 0.0.6 closes right after opening?

That version had a launch bug, fixed in 0.0.7. Because it can’t open, it can’t update itself: download Barista again and replace the copy in Applications (or delete it and run the Terminal command above).

The app won’t open: “unidentified developer”?

Early builds aren’t notarized yet, so macOS says it can’t verify Barista the first time. Click Done, then go to System Settings → Privacy & Security and click Open Anyway. You only do this once: in-app updates don’t ask again. Installing with the Terminal command (curl -fsSL https://baristatime.app/install.sh | sh) skips this step.