Issue queue · 10 openTuesday, 30 June 2026Apache 2.0 · Self-hostable · BYO LLM
github.com/mergecrew/mergecrew · early alpha
001ManifestoAn autonomous SDLC, not another agent chat.

The product team
that doesn't need standup.

Mergecrew is a multi-agent crew that runs on a cron against your real repository. Spec, build, deploy to dev, scan for regressions— every weekday by lunch. One decision arrives in your inbox at 5pm: promote to production, or don't.

Run the loop locally Read the specor docker compose -f docker-compose.full.yml up
demo-saas · today's runlive · 0 of 6
PR #418 · Fix calendar event drag — off-grid drops
Planner · spec09:00
Coder · draft PR09:04
Reviewer · approve09:14
Deploy · to dev09:18
Scanner · probe09:22
Digest · pending17:00
+128 / -22 · 3 files$0.74 spent
Cadence
1 / weekday
No tickets, no chat. The crew shows up.
Median PR
137 LOC
Small. Focused. Reviewable. Never a five-day epic.
Cost / run
$0.74
Capability-routed, with provider fallover.
Decisions / day
1
One inbox. One verdict. The only non-automated step.
002 — The Crew

Five specialists.
One weekday.

Four agents specialize, one human gates. A cheaper Reviewer catches the obvious before you do, so you read fewer bad PRs. Promotion to prod is the only step Mergecrew will never automate — by design, not by configuration.

CREW · 01Active
P
Planner
Reads recent intent, yesterday's digest, and the repo itself. Drafts small, focused changesets. Never a five-day epic.
~2 TASKS / DAY180 SEC AVG
CREW · 02Active
C
Coder
Opens PRs against your real branch. Touches only the files the Planner pointed at. No scope creep, no half-finished refactors.
~140 LOC / PR1 BRANCH / RUN
CREW · 03Active
R
Reviewer
A cheaper model catches the obvious before you do. Loops back to Coder on request-changes. You read fewer bad PRs.
3.1× CHEAPER2 LOOPS MAX
CREW · 04Active
S
Scanner
Hits the dev preview with a curated checklist. Console errors, broken flows, regressions — filed back as tomorrow's tasks.
14 PROBESpreview ENV
CREW · 05Gate
Human
One decision per day. Approve to prod, defer, or roll back. Promotion to production is an invariant, never a setting.
1 DECISION / DAY~3 MIN AVG
003 — The Loop

Not an agent.
An assembly line.

Most autonomous-coding tools take a ticket and produce a PR. Mergecrew owns the entire cycle around that work — runs it daily, deploys it, scans it, and hands you a single moment of judgment per day.

01 · 09:00

Spec

Planner reads intent, the repo, and yesterday's bugs. Drafts a small changeset.

02 · 09:04

Build

Coder opens a draft PR. Reviewer loops back on request-changes.

03 · 09:18

Deploy

Pluggable adapter ships the PR to dev — Vercel, Fly, GH Actions.

04 · 09:22

Scan

Scanner exercises the preview URL. Regressions filed for tomorrow.

05 · 17:00

Digest

One email. Today's diffs, today's risks, today's verdict.

06 · GATE

Human

Approve, defer, or roll back. The only step Mergecrew won't automate.

07 · SHIP

Prod

Promoted on your nod. Tagged, deployed, archived in the run log.

Product invariant. Production promotion is always a human decision. Not a setting — a property of the system. Try to disable it; the build fails.
median runtime 22mcost $0.74demo mode $0.00
004 — Surfaces

A timeline of work,
not a tab of chats.

Three things you'll actually open: today's timeline, the daily digest, and the approval card. The rest stays on the box — it does its job whether you're watching or not.

No dashboards to learn. No tickets to triage. Just a verdict per day, delivered the way the news used to come.

demo-org / demo-saas / timeline14:22 UTC · today
09:00:04
Planner drafted changeset3 files · ~140 LOC
"Fix calendar event drag — drop targets off-grid on mobile."
09:04:31
Coder opened draft PR #418+128 / -22
apps/web/calendar/EventCanvas.tsx · packages/ui/Grid.tsx
09:11:08
Reviewer requested changes1 of 2 loops
"Hardcoded breakpoint — pull from design tokens."
09:14:55
Coder revised — Reviewer approved+4 / -3
PR #418 marked ready-for-review
09:18:02
Deploy → dev (Vercel)preview live
demo-saas-pr-418-mergecrew.vercel.app · 38s build
09:22:17
Scanner found 1 regressionfiled 2026-05-22
Console: TypeError in Sidebar.tsx after viewport < 640
17:00:00
Digest dispatched — awaiting your gate
5 PRs · $0.74 spent · 1 regression carried forward
today's digest · 22 Mayawaiting decision

The crew shipped 5 PRs today.

17:00 UTC
Net result: four are ready to ship, one needs your eyes — Scanner flagged a viewport regression carried forward to tomorrow. Daily spend $0.74, 92% of weekly budget remaining.
#418
Fix calendar event drag — off-grid drop targets
apps/web · +132 / -25 · low risk
#419
Migrate billing tables to RLS policies
packages/db · +84 / -12 · review needed
#420
Slack adapter — handle webhook retry storms
packages/adapters-comms · +41 / -8
#421
Docs: deploy-targets cookbook — Render section
docs/03-infrastructure · +280 / 0
#422
Worker-cron: backoff on rate-limit
apps/worker-cron · defer to Monday
Approval required
Promote 4 PRs to production. Defer 1. Re-run Scanner tomorrow on the carried regression.
005 — Self-host

Five minutes.
No card. No key.

One docker compose brings up Postgres, Redis, four backend services, and the web app. The seeded demo project runs the full multi-agent loop against a deterministic stub.

No LLM provider required to see the loop end-to-end. When you're ready, plug in Anthropic, OpenAI, Bedrock, or local Ollama and flip MERGECREW_DEMO_MODE=0.

~ / projects / mergecrewzsh · 80×24
# 1. Clone & spin up everything
$ git clone https://github.com/mergecrew/mergecrew.git
$ cd mergecrew
$ pnpm compose:full

# 2. localhost:3000 — already signed in
✓ postgres      ready
✓ redis         ready
✓ api · 4000    ready
✓ orchestrator  ready
✓ runner        ready
✓ worker-cron   ready
✓ web · 3000    ready

# 3. Trigger today's run
$ curl -X POST localhost:4000/v1/orgs/demo/projects/demo-saas/runs
→ run accepted · agent_steps streaming
Mergecrew · Apache 2.0 · v0.4-alphaBuilt in the open · github.com/mergecrew