Foremergeは、複数のAIコーディングエージェント間での並行作業を管理するために設計されたオープンソースの調整プロトコルです。Gitは、エージェントがファイル内の同じ行を編集する際のテキストベースの衝突を検出することには長けていますが、異なるファイル間での変更が互いに矛盾するような「意味的な衝突」を検出することはできません。例えば、あるエージェントが、別のエージェントが現在拡張を進めているサービスのリファクタリングを行っている場合などがこれに該当します。
Gitを基盤として構築されたForemergeは、実装が開始される前に、エージェントが予定している変更、スコープ、および依存関係を宣言することを可能にします。この「共有ホワイトボード」アプローチは、リポジトリの .git ディレクトリ内に保存されるローカルのSQLiteデータベースを使用しており、すべてのリンクされたワークツリーが同じ調整状態を共有できるようにしています。
主な技術的特徴は以下の通りです:
- 意図の宣言 (Intent Declaration): エージェントが計画している操作と意味的なスコープ(シンボル、API、構成など)を公開し、潜在的な重複を特定します。
- アドバイザリ衝突検出 (Advisory Conflict Detection): プロトコルは意図が衝突した際に警告を発しますが、ファイルロックの実装やエージェントの進行のブロックは行わないため、ユーザーは完全な制御を維持できます。
- 検証ゲート付きライフサイクル (Verification-Gated Lifecycle): ForemergeはChangeSetsのライフサイクルをサポートしており、自動チェックを通じて特定のGitフィンガープリントに対して変更が検証されます。
- MCPサポート: Model Context Protocol (MCP) サーバーを提供しており、Claude Code、Codex、CursorなどのさまざまなAIクライアントとの統合が可能です。
現在のバージョンである 0.5.0 は、CLI、JSON API、および決定論的な衝突検出を提供するローカルファーストのMVPです。これは、異なるAIモデルやクライアント間での調整を可能にする、ヘテロジニアスな環境で動作するように設計されています。
出典
- Show HN: Foremerge – Catch Intent Conflicts Between Parallel Coding Agents (Hacker News Frontpage, 2026-09-21)
- foremerge.com