● New: widgets, Claude in the app, safe deploys, more hosts →

Stop paying for a build on every push.
Pay for what you ship.

Turn off auto-deploy on Vercel, Render and more in one click. See what waits, deploy when you decide, and let Claude open a fix PR when a build fails.

Free · MIT · macOS 15+, Apple silicon and Intel · signed and notarized · no account · no telemetry

brew tap pschmetzer/tap && brew trust pschmetzer/tap
brew install --cask deploy-center

Version 0.9.1 · What’s new · All releases · Verify a release

The Deploy Center window: 38 PRs waiting in 5 projects on Vercel and Render, Vercel build costs of the last 7 days, and a Deploy button

The real app in demo mode: project names are stand-ins.

Vercel and Render by default · opt-in: Netlify, Cloudflare Pages, AWS Amplify, DigitalOcean, Coolify, any deploy hook · GitHub and GitLab · Which hosts?

Every push builds every project.

Typos, dependency bumps, an AI agent pushing after every step: each one is a paid build. You only needed the last one live.

Auto-deploy

Each push builds all 3 projects.
0 builds≈ $0.00 today

Deploy Center

Pushes wait; one deploy ships them.
0 builds≈ $0.00 today
Illustration: 14 pushes, 3 projects, ≈ 6 ¢ a build.
Savings, in numbers
  • SimulatorYour last 30 days of pushes: “auto-deploy ≈ $X a month” next to “once a day ≈ $Y”, before you switch.
  • Ledger“≈ $X saved since …” per project, in dollars and build minutes.
  • Build costsVercel spend for 7 days, the monthly pace, a budget warning at 80 %.
  • Share the savingA picture and a sentence, without project names.

Build cost calculator → · How it is counted

Three steps. Then two clicks a day.

Your own logins; nothing goes through a server of ours.

  1. Connectvercel CLI login, a Render key in the keychain, gh or glab.
  2. Turn auto-deploy offOne click for all projects. The guard keeps it off.
  3. Deploy when you wantSelect all changed (⌘A), Deploy. Optionally only when CI is green.

Or zero clicks: a daily deploy from CI. New to it? Try it safely.

Claude & AI agents

Let the agent push. Let Claude fix. You decide what ships.

With auto-deploy off, agent pushes cost nothing. When a build fails, Claude takes the first shot at the fix.

  1. Build failson Vercel or Render
  2. Log is maskedkeys, tokens, emails out
  3. Claude Code routinereads log and repo
  4. Fix PR opens“Claude is fixing” on the row
  5. You merge, deployClaude never merges
  • Claude in the app newExplain a failure (then Fix with Claude), plain release notes in English or German, “Is this safe to ship?”. Your key, a monthly cap. More
  • Connect in one clickSettings → Claude connects Claude Desktop and Claude Code. Claude deploys only if you allow it, and asks each time. MCP server
  • Claude Code pluginA skill and four commands for what waits, status, shipping and fixing, plus a reminder after each push. More
  • Agent digestDaily: agent and human commits apart, PRs, risk hints, with an approve button. More
  • “What this ships” on PRsClaude Code action comments affected projects and a risk level. Workflow
  • Copy for ClaudeThe build log copies the first error and its context as a prompt, secrets masked. Guide
Settings, Claude: Claude Desktop and Claude Code connected, Autofix on, and a switch Let Claude deploy (asks you first)

Autofix never merges, opens no duplicate PRs and has caps per project and per day. Autofix docs →

Safe deploys & teams

Ship on purpose. Never by accident.

Checks before, during and after each deploy, and team rules without a server.

  • Only when checks are greenDeploys commits whose CI passed; waits for running checks.
  • Site check and rollbackOpens your page or /health after a deploy; rolls back on a countdown if it fails.
  • Deploy windowsNo deploys on Friday night; “Deploy anyway…” is journaled with a reason.
  • Risk scoreMigrations, env files, lockfiles, build config: green, yellow or red.
  • Auto-deploy guard newEvery 30 min it turns auto-deploy off again where it came back. Emergencies get a time limit.
  • A second to change your mindA short wait with cancel, Stop all, and every deploy asks first.

Team mode, without a server

  • Shared configA deploy-center.json per repo: health paths, windows, groups, ignored projects.
  • ObserversRead-only for anyone listed; deploy buttons disappear.
  • Two-person ruleProduction needs an approval from someone else on that exact commit. Overrides are journaled.

Safe deploys · Guard · Team mode

Everywhere you look

What waits, at a glance.

No need to remember to deploy: the count is on your desktop and soon in your pocket.

  • Mac widgets newSmall: PRs waiting, building, failed. Medium: top projects and the saving.
  • iPhone and iPad soonDeploy and roll back with Face ID, Home Screen widgets. Tokens stay on the device.
  • Menu bar and DockPRs waiting, failures, provider outages, a note when a deploy ends.
  • Command palette ⌘KEvery action by fuzzy search; optional global ⌥⌘K.
Small widget: 5 PRs waiting in 3 projects, 1 building, 1 failed (demo data) Medium widget: 5 PRs waiting, about 83 dollars a month saved, and three projects (demo data) iPhone: the Deploy Center list with 5 PRs waiting and projects building, failed, waiting and up to date (demo data)

Everything around a deploy.

For people with many projects and little patience.

  • What is waitingCommits and merged PRs not live yet, per project and in total. How it counts
  • Preview and rollbackOn the hosts that support them, from the row menu or ⌘K.
  • Groups in orderBackend first, then frontend; each waits until the one before is live.
  • Readable build logsErrors in red, errors only, jump to the first error, ANSI codes removed.
  • Demo modeHides project names and domains for screenshots.
  • JournalEvery deploy, rollback and override with time and reason; CSV export.
  • Updates via SparkleEdDSA-signed, same Developer ID only, installed when no deploy runs.
  • Keyboard and VoiceOver⌘R ⌘F ⌘1 Esc, a deploycenter:// link, labels on every row.
  • Private by designKeys in the keychain, masked before anything goes to Claude. Threat model
Integrations & CLI

Where you already work.

All on the same deploys script, which runs on macOS, Linux, WSL and CI. Add --json to anything.

  • VS Code, Cursor, WindsurfWaiting count, project tree, deploy, “Copy for AI”.
  • RaycastWaiting deploys, status, deploy all changed.
  • GitHub ActionJob summary, daily deploy, deploy on a label.
  • Daily summarySlack, Discord, Telegram, ntfy, Mattermost.
  • Status page“What shipped when”, with an Atom feed.
  • Badges, pre-push hook, DockerFor the README, before a push, in any CI.

All integrations · CLI reference

Shortened illustration.

Why not just …

Good ways to cut builds by hand, and where Deploy Center goes further.

FeatureIgnored Build StepDisconnect Git by handStatus menu bar appsDeploy Center
Setup for 30 projectsA script each30 settings pagesNothing turned offOne click
See what is waitingNoNoStatus onlyPer project and total
Deploy many at oncePush againOne by oneNoSelect all → Deploy
Several hostsVercel onlyEach differentlySomeOne window
Fix PR for a failed buildNoNoNoAutofix with Claude
Green CI, rollback, guardNoNoNoYes

Questions

Is it really free?

Yes. MIT license, no paid tier, no account. The code is on GitHub.

Does my data go anywhere?

No server of ours and no telemetry. The app talks to your hosts with your own logins, to GitHub through gh or to GitLab, and once a day to deploycenter.app/appcast.xml to look for updates (you can turn that off). Only if you turn on Claude in the app does it send masked text to api.anthropic.com, with your own key.

Does Claude merge or deploy on its own?

No. Autofix opens a fix pull request and never merges it; deploying stays a click. The MCP server is read-only unless you switch on “Let Claude deploy”, and then Claude asks before each deploy or rollback, one project at a time.

Do I need an Anthropic API key?

Only for Claude in the app (explain a failure, release notes, ship check), which is off by default and has a monthly token cap. Autofix runs as your own Claude Code routine. Everything else works without Claude.

What do I lose without auto-deploy?

Automatic deploys and automatic preview builds per pull request. You have to remember to deploy; the menu bar count, the widgets and an optional daily summary help. Preview deploys can still be started by hand.

Can I go back?

Yes. deploys vercel autodeploy-on --all and deploys render autodeploy-on --all turn it back on, or use the dashboards. Deploy Center remembers each Vercel repo before it disconnects it. Auto-deploy off and on · Uninstall

Which hosts are supported?

Vercel and Render are on by default. Netlify, Cloudflare Pages, AWS Amplify, DigitalOcean App Platform, Coolify and a generic deploy hook are opt-in: deploys providers enable netlify, or Settings → Platforms. On Cloudflare Pages it saves build quota rather than money. Waiting commits come from GitHub or GitLab.

Is there an iPhone app?

It is built and on its way to the App Store: what waits, deploy and rollback with Face ID, and Home Screen widgets. The Mac app and its widgets are available now. Watch the repo to hear when it is out.

Can my team use it?

Yes, without a server: a shared deploy-center.json in each repo, observer mode, and an optional two-person rule for production deploys.

Windows or Linux?

The app is macOS only. The deploys CLI is bash and installs on Linux, WSL and in CI: curl -fsSL https://deploycenter.app/install.sh | sh.

More questions · Troubleshooting

Ship when you decide.

Made by an indie dev whose Vercel bill hit $99 in 7 days. Free for macOS 15 and newer.

Not on a Mac? Use the CLI. Using Claude Code? Add the plugin. Ideas? Open an issue · Good first issues

Download for Mac · free