# Foremerge

An open-source coordination protocol, built on top of Git, that lets coding agents share their intent before they edit, so plans that would quietly conflict are flagged while every worktree is still clean.

Foremerge lets coding agents working in separate Git worktrees announce what they are about to change before they start, so two plans that touch different files but undo each other's work are caught early instead of merging silently. Each agent posts its target to a shared SQLite store kept inside the project's `.git` folder, and every agent reads from that same list.

When two announced plans collide, Foremerge names the two agents, explains why the plans clash, and suggests how to split the work, while both worktrees remain unmodified. The project also has a CLI, a JSON API, an MCP server, a deterministic conflict detector and a verification-gated lifecycle.

It is written in Rust and is a pre-1.0, local-first MVP at version 0.5.0; coordination between separate machines is outside its current scope.

Website: https://foremerge.com
