Merge without conflicts.

Entity-level semantic merge driver for Git. Two agents edit different functions in the same file? Clean merge. Every time.

git merge
# Two agents edited different functions

$ git merge feature-b
CONFLICT (content): Merge conflict in src/lib.ts
Automatic merge failed.

# Git sees overlapping lines.
# The functions don't actually overlap.
weave
# Same merge, with weave configured

$ git merge feature-b
weave [src/lib.ts]:
  2 entities matched, 2 modified, 0 conflicts
Merge made by the 'ort' strategy.

# Different functions = no conflict.
copied $ brew install weave

31 out of 31.

31 merge scenarios across 7 languages. Full breakdown →

weave
31/31 (100%)
mergiraf
26/31 (83%)
git
15/31 (48%)
83 real-world wins
0 regressions on C, Python, Go
4,917 file merges tested
1,500+ downloads

Three layers

Use just the merge driver. Or add coordination for multi-agent workflows. Full docs →

MERGE

Merge Driver

Replaces git's line-level merge. Parses code with tree-sitter, merges by function and class.

COORDINATE

CRDT State

Agents claim entities before editing. Detect conflicts before they happen.

CONNECT

MCP Server

22 tools via Model Context Protocol. Claude and other AI agents call them directly.

38 languages and formats

Entity extraction powered by sem-core and tree-sitter, including 5 data formats. Every one below passes a merge sanity sweep before it ships. Full list →

TypeScript TSX JavaScript Python Go Rust Java C C++ C# Ruby PHP Swift Kotlin Scala Dart Elixir Bash Fish Fortran Perl OCaml Zig Elm Clojure EDN D Lua Nix SQL HCL LaTeX XML JSON YAML TOML CSV Markdown

Try it. 5 seconds.

~/my-project
$ brew install weave

$ cd my-project && weave setup
 Merge driver configured

$ git merge feature-branch
Merge made by the 'ort' strategy.