Commit

7a69f38

At the risk of breaking the no-self-promotion rule but trying to get some good technical discussions going on here... I opensourced one of our internal dev tools recently that helps anyone running more than one coding agent on the same repo (I'm assuming that was the case for /dev/null since it was build in 48 hours) **The problem** One agent moves every controller onto a new BillingService. Another adds refunds to the old PaymentService. Different files, no overlapping lines and Git merges it cleanly, and the refund code ends up attached to a class nothing calls anymore. Git compares text, so it only sees a collision when two changes touch the same lines. The bigger issues happen earlier, before any agent even writes the code. **What Foremerge does** Before an agent writes code, it publishes what it intends to change and the scopes it will touch: a file, a class, a route. When two plans can't both be true, Foremerge commits a finding that explains the clash while the work is still a plan. - It never locks anything, claims are advisory. - It sits above Git, not instead of it. - There's no LLM in the detection, so the same inputs always give the same finding. - Work is only accepted after Foremerge runs your check itself, not on the agent's word. **Quickstart (macOS and Linux)**
sh
# install (or: npm install -g foremerge)
curl -fsSL https://foremerge.com/install.sh | sh

# inside your Laravel repo
foremerge init
foremerge setup all        # wires up Claude Code, Codex and Cursor
foremerge checks set test -- php artisan test
foremerge doctor --client all
Or paste this into Claude Code, Codex or Cursor and let it set itself up:
text
Set up Foremerge in this repository so we can coordinate parallel agents.
1. Install it:   curl -fsSL https://foremerge.com/install.sh | sh
2. Initialize:   foremerge init
3. Wire clients: foremerge setup all
4. Register the check: foremerge checks set test -- php artisan test
5. Confirm:      foremerge doctor --client all
Then read the Foremerge skill step 3 installed and follow it: publish your intent with scopes before editing, claim the scope, check for conflicts before you start.
Pick a check that's fast and actually catches a broken handoff. A full suite can be slow php artisan test --parallel or a static analysis run works too. It's open source (Apache-2.0). I built it while building GPTree. If you run agents in parallel on a Laravel app, I'd like to hear how you keep them out of each other's way, with or without this.

commit 7a69f38