naw103/foremerge

Catch intent conflicts before code conflicts. The open-source coordination protocol for coding agents, built above Git.

解決する課題

Foremerge は、複数の AI コーディングエージェントが同時に同じプロジェクトで作業するときに発生する「意図の競合」に対処します。Git は 2 つのエージェントが同じコード行を編集したことを検出できますが、異なるファイル内の 2 つの論理的に妥当な変更が互いに矛盾する場合(たとえば、あるエージェントが別のエージェントが拡張中のサービスを置き換える場合)は検出できません。Foremerge は、コードを書く前にエージェントが計画を調整できるようにし、無駄な作業や統合の破綻を防ぎます。

仕組み

Foremerge は Git 上に構築された調整プロトコルとして機能します。プロジェクトの .git フォルダ内に保存された共有 SQLite データベースを使用し、別々の Git ワークツリーで動作するエージェントが「セマンティック・ホワイトボード」を共有できるようにします。

  1. 意図の公開:コーディングの前に、エージェントは対象(例:「sendEmail 関数を変更しています」)と操作(例:replace または extend)を宣言します。
  2. 競合検出:Foremerge はこれらの宣言を他のエージェントの計画と比較します。2 つのエージェントが競合する操作で同じシンボルを対象にしている場合、助言的な警告を発します。
  3. 検証ゲート:作業が完了したら、Foremerge は作業を承認済みとしてマークする前に、特定のコードフィンガープリントに対して検証チェック(テストスイートなど)を実行することを要求します。
  4. ノンブロッキング:ファイルをロックしたりエージェントをブロックしたりしません。助言的な警告と証拠を提供し、人間またはエージェントがどう進めるかを判断できるようにします。

対象者

単一のコードベース上で複数の AI コーディングエージェント(Claude Code、Codex、Cursor など)を並行して使用し、論理的な衝突を防ぎ、エージェントの決定の監査証跡を必要とする開発者。

ハイライト

  • セマンティック認識:単なるテキスト行だけでなく、シンボルと意図に基づいて競合を検出します。
  • ローカルファースト:.git ディレクトリ内のローカル SQLite ストアを使用し、ローカルワークツリー間でゼロ設定共有を実現します。
  • MCP 統合:Model Context Protocol (MCP) サーバーを提供し、AI エージェントがネイティブに登録、意図の公開、競合の問い合わせを行えるようにします。
  • 検証ゲート付き:ChangeSet がエージェントの報告状態に依存するのではなく、実際のコマンド実行(例:cargo test)によって検証されることを保証します。

関連

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