All use cases

Auto-Merge Release PRs on a Schedule

Tell Zero when to ship release PRs and which to skip. It runs checks on your cadence, skips risky changes, and merges the rest automatically.

Zero connects:GitHubSlack

What Zero delivers

What the problem is

A new release PR opens whenever your main branch picks up enough commits - on most teams that's once or twice a day. Someone has to glance at the diff, confirm CI is green, decide whether the changelog contains anything scary, click Merge, and then babysit the deploy. If they are in a meeting, asleep, or on another continent, the release sits. Commits keep stacking on top, the changelog grows, and the merge gets riskier. You tell Zero once - run the release check once a workday, skip the risky ones, merge during work hours, post to the release channel - and from then on, shipping happens on its own, on your team's clock.

How Zero fixes it

Step 1: Connect your tools

GitHub
GitHub
Required
GitHub - Zero lists release PRs, inspects file changes, confirms CI status, and enables auto-merge. Repository write access is required so Zero can trigger the merge.
Connect
Slack
Slack
Required
Slack - Zero uses your Slack connection to announce merges, flag skipped PRs, and escalate risky ones. Without Slack, Zero can still merge but has nowhere to report.
Connect

Step 2: Ask Zero

@Zero every weekday at 3pm, check our repo for an open release PR. If it has no DB migration files, enable auto-merge with squash so it ships the moment CI passes - then post an update in #release-notify.
Zero checks for release PRs on your cadence
Zero runs on whatever schedule you set - once a workday for most teams, hourly for high-velocity ones - and queries GitHub for open release PRs on your default branch. Outside that window, it does nothing. No after-hours merges, no weekend surprises.
Zero vets each PR against your safety rules
Zero reads the file list on the PR. If any file matches a sensitive path you flagged (migrations, infra, billing), it skips the merge and pings the channel so a human decides. Otherwise it confirms the required CI checks are passing.
Zero enables auto-merge and reports the outcome
For PRs that pass the policy, Zero runs `gh pr merge --auto --squash` so the PR lands the moment CI turns green. When the merge lands, Zero posts a compact status line back to your release channel.

Step 3: Take it further

Tighten the policy on the fly
Layer in new rules without touching code.
@Zero from now on, skip any release PR whose changelog mentions `infra` or `billing`.
Escalate the risky ones
Have Zero flag - not merge - PRs it would otherwise skip.
@Zero when you find a release PR with a migration file, open a thread in #dev tagging @oncall with the diff link.
Crank up the cadence when you're ready
Move from daily to multiple times a day once the policy has proven itself.
@Zero starting next week, run the release auto-merge check twice a day - once in the morning, once after lunch - instead of just at 3pm.

Tips for better results

Start with one check a day and increase the cadence only after the policy has earned trust. Daily gives the team a predictable shipping rhythm without feeling surveilled.
Encode your unwritten release rules in the prompt. 'Skip migrations' is obvious; 'pause merges during demo windows' or 'never ship on Friday afternoons' are the quiet rules Zero should know about.
Chain it with a daily engineering brief so your morning report opens with 'yesterday's release shipped, N commits in it, M PRs still queued'. Pair autonomous shipping with visible reporting.