Blog
Writing on coordinating parallel coding agents: intent conflicts, semantic scopes, what worktrees do not fix, and where orchestration ends and coordination starts.
Agent sessions end without closing their work, and a coordination store that treats abandoned plans as live fills up with noise. What Foremerge 0.6.0 changes, and why.
An intent conflict is two declared plans that cannot both be true. Git cannot see one, because it compares lines, not plans. A definition, an example and what it is not.
Git worktrees stop agents overwriting each other's files. The collision between their plans is still there, and you find it at merge time. Here is a run you can repeat.
Give each agent its own worktree, split the work by what each task changes, and test the merged result. That handles files. It does not handle two plans that cannot both be true, and Git will merge those without a word.
The stack grew five layers in two years, and each was adopted fast because its absence hurt the same day. The sixth one's absence hurts three days later. That is the only reason you are probably missing it.
Both words mean make several agents work together, so they get used interchangeably. They name different layers, and one question tells you which one you are running.
A reader went through the Foremerge source and asked 31 questions about design, trust, and roadmap. The full maintainer Q&A, lightly edited.
Two agents, two worktrees, zero textual conflict, and a clean merge that broke anyway. Worktrees isolate files, not plans, and Git compares diffs, not intentions.