Ataraxy-Labs/weave

Entity-level git merge driver. Resolves false conflicts git invents when independent agents edit the same file. ~95% reduction vs. line-based merge.

解決する課題

Git のデフォルトである行ベースのマージは、2 人の開発者(または AI エージェント)が同じファイルに独立したコード(例: 異なる関数)を追加したときに「偽の衝突」を生むことがあります。Weave は、行ではなくコードの実際の構造を理解することで、こうした不要な手動解決を排除します。

仕組み

Weave は Git のセマンティックマージドライバーとして動作します。tree‑sitter を使ってファイルを「エンティティ」(関数、クラス、JSON キーなど)にパースし、base、local、remote の各バージョン間でマッチングします。

行の差分を取るのではなく、エンティティ単位でマージします:異なるエンティティが変更された場合は自動的に解決し、同一エンティティが双方で変更された場合はエンティティ内部でのマージを試みるか、明確なコンテキスト付きのセマンティックコンフリクトとしてフラグを立てます。バイナリファイル、未対応タイプ、または 1 MB を超えるファイルについては、標準の行ベースマージにフォールバックします。

対象ユーザー

Git を使用するソフトウェア開発者やチーム、特に同一コードベースを複数の AI エージェントが同時に変更する環境で、些細なマージコンフリクトの解消に費やす時間を削減したい人向けです。

ハイライト

  • エンティティレベルの解決:通常 Git のコンフリクトを引き起こす同一ファイルへの独立変更を自動的に解決。
  • 幅広い言語サポート:TypeScript、Python、Go、Rust、Java、C、C++、JSON、YAML など多数の言語と設定フォーマットに対応。
  • セマンティックコンフリクトマーカー:実際の衝突が発生した際に、function 'process' (both modified) のような説明的マーカーを提供。
  • 高精度:実際のオープンソースリポジトリでベンチマークし、回帰ゼロを報告。