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.

weave – Git のためのエンティティレベルのセマンティックマージ

概要

  • Rust ベースのツールで、Git の行単位のマージを、関数、クラス、JSON キー、その他の言語エンティティに対して機能する セマンティック マージに置き換えます。ファイルの 3 つのバージョン(base、ours、theirs)を tree-sitter で解析し、エンティティを名前/スコープで照合して、インテリジェントにマージします。

重要性

  • 複数の AI エージェント(または開発者)が同じファイルを編集する場合、変更が独立していても(例:2 つの新しい関数が並んで追加された場合)、Git はしばしば競合をフラグします。weave はこれらの誤った競合を自動的に解決し、エージェントが人間の介入なしに続行できるようにします。

主な機能

  • エンティティレベルの 3 方向マージ – 関数、クラス、オブジェクトキーなど、38 のサポート言語で動作します。
  • 決定論的かつステートレス – 同じ 3 つのリビジョンが与えられると、常に同じ結果を生成します(git merge-file と同様)。
  • 競合コンテキスト – 実際の競合が発生した場合、マーカーにはエンティティ名、タイプ、および短い「refused_by」理由が含まれ、手動解決が容易になります。
  • weave land – マージされたツリーを検証し、オプションでカスタムリゾルバを実行し、構造チェック(PROVEN、VERIFIED、REFUSED)を通過したファイルのみをステージングするコマンド。
  • Git および Jujutsu との統合 – weave-driver マージドライバと、必要な .gitattributes ルールを自動的に書き込む weave setup コマンドを提供。
  • CRDT ベースの調整レイヤー(別の weave-crdt crate)は、変更が Git に到達する前のライブマルチエージェント編集用。
  • ベンチマークとテスト – 441 のユニット/統合テストに加え、Git および Mergiraf と実世界のリポジトリ(git、Flask、CPython、Go、TypeScript)で比較する広範なベンチマークスイート。

インストール

# Homebrew (macOS / Linux)
brew install weave

# ソースから(Rust ツールチェーンが必要)
git clone https://github.com/Ataraxy-Labs/weave
cd weave
cargo install --path crates/weave-cli      # `weave` コマンド
cargo install --path crates/weave-driver   # Git によって呼び出されるドライバ

典型的なワークフロー

  1. weave setup(または --global、--local、--off)を実行して、サポートされているすべてのファイルタイプにマージドライバをインストールします。
  2. 通常どおりマージします:git merge <branch>。
  3. weave が競合マーカーを生成した場合は、weave explain <file> を使用して詳細なエンティティレベル情報を取得します。
  4. 編集後、weave check を実行してツリーを検証します。
  5. weave land(オプションでカスタムリゾルバを提供)で完了し、解決済みファイルをステージします。

エコシステムと関連プロジェクト

  • sem – セマンティックバージョン管理。
  • inspect – セマンティックコードレビュー。
  • opensessions – コーディングエージェント用の tmux サイドバー。
  • weave-crdt – ライブマルチエージェントコラボレーション用の CRDT レイヤー(言及のみで、このリポジトリの一部ではありません)。

成熟度

  • 最新安定版 0.5.3(2026 年 9 月時点)。
  • CI は Linux と Windows で実行;すべてのテストが合格(441+ テスト)。
  • 数千の実際のマージコミットでベンチマークされ、結果が公開されています。

ライセンス

  • デュアルライセンス:MIT OR Apache-2.0。

結論 weave は、多くの自動エージェント(または開発者)が同じファイルを編集するコードベースで、誤ったマージ競合を減らすための本番対応のオープンソースソリューションです。生の行ではなく言語エンティティのレベルでマージすることで、チームはより速く、手動介入を減らして変更を出荷できます。

関連

  • プロジェクト
  • Dispatch
  • プロジェクト
  • プロジェクト
  • Dispatch