deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Hacker News – Front Page (native)

Açık kaynaklı Foremerge, paralel kodlama ajanları arasındaki çakışan planları görünür kılıyor

Hacker News'te paylaşılan yeni bir açık kaynak proje, paralel çalışan kodlama ajanlarına Git destekli, paylaşımlı bir niyet beyanı kayıt defteri sunarak herhangi bir kod yazılmadan önce semantik çakışmaları işaretliyor.

Açık kaynaklı Foremerge, paralel kodlama ajanları arasındaki çakışan planları görünür kılıyor

Hacker News'te GitHub deposu üzerinden paylaşılan Foremerge adlı yeni bir açık kaynak proje, sürüm kontrol sisteminin göremediği bir başarısızlık modunu hedefliyor: değişiklikleri sorunsuz birleşen ama birbirlerinin hedeflerini sabote eden iki yapay zekâ kodlama ajanı. 0.5.0 sürümü şu anda pre-1.0, yerel öncelikli bir MVP olarak erişilebilir durumda.

Git'in kör noktası

Projenin README'sine göre Git metni karşılaştırır, niyeti değil. Aynı dosyanın aynı satırlarına dokunan iki değişikliği engeller, ama ayrı ayrı makul olan ve birlikte çelişen, farklı dosyalardaki iki değişikliği tespit edemez.

README bunu bir ödeme örneğiyle açıklıyor: bir ajan tüm çağrıları yeni StripePaymentService'e taşırken ikinci bir ajan eski PaymentService'e PayPal desteği ekliyor. Metinsel olarak hiçbir şey çakışmadığı için Git ikisini de sorunsuz birleştiriyor ve PayPal çalışması, artık kimsenin çağırmadığı bir sınıfa bağlı kalıyor. Her iki worktree de doğru görünüyor; ama emek boşa harcanmış oluyor.

Git'in üzerinde paylaşımlı bir kayıt defteri

Foremerge, Git'in üzerinde durur ve her ajandan, herhangi bir şeyi düzenlemeden önce neye dokunmayı planladığını bildirmesini ister; bu, kodun kendisi değil, belirli bir fonksiyon gibi bir hedef şeklinde semantik kapsamlar olarak ifade edilir. Beyanlar, projenin .git dizinindeki küçük bir veritabanına yazılır; böylece makinedeki Claude Code, Codex veya Cursor gibi her ajan, izole worktree'lerde çalışmaya devam ederken aynı resmi görür. Niyetin ötesinde, protokol ajanların semantik iddiaları, bağımlılıkları, geçici ChangeSet'leri, kararları, doğrulama sonuçları ve köken bilgilerini paylaşmasına olanak tanır.

İki beyan edilen plan çakıştığında Foremerge her iki ajanı da adıyla anar, planların neden çeliştiğini açıklar ve işin nasıl bölünebileceğini önerir — hem iki worktree'nin hâlâ temiz olduğu hem de hiçbir şeyin çöpe atılması gerekmediği bir noktada. Ödeme senaryosunda her iki ajan da aynı PaymentService kapsamını beyan eder; biri onu değiştırmayı, diğeri genişletmeyi planlar ve Foremerge, PaymentProvider gibi kararlı bir soyutlama üzerinde koordine olmalarını öneren YÜKSEK düzeyde bir uyarı (advisory) yükseltir. README, bunun otomatik bir mimari hüküm ya da sert bir kilit değil, insan tarafından verilecek karar için açıklanabilir bir kanıt olduğunu vurgular.

İki sınırlama bilinçli olarak benimsenmiş. Foremerge hiçbir zaman dosyaları kilitlemez veya bir ajanı engellemez; aksi halde çöken tek bir ajan tüm filoyu durdururdu; uyarılar tavsiye niteliğinde kalır ve kontrol operatörde olur. Ayrıca bir dil modelinden çakışmaları değerlendirmesini asla istemez; böylece tespit deterministiktir — aynı girdiler her zaman aynı cevabı üretir. İşlem düzyazıdan ayrıştırılmak yerine önceden beyan edildiği için, aynı şeyi ifade eden ama farklı şekilde ifade edilen planlar aynı sonuca ulaşır.

Durum ve kurulum

README, 0.5.0'da uygulananları listeliyor: bir CLI, bir JSON API, bir MCP sunucusu, bir SQLite deposu, deterministik çakışma dedektörü ve doğrulama kapılı bir yaşam döngüsü. Genel şemalar hâlâ değişebilir, hiçbir kıyaslama sonucu yayınlanmamıştır ve makineler arası koordinasyon açıkça kapsam dışıdır.

Kurulum, ajanın kendisine devredilebilir; Claude Code, Codex veya Cursor'a bir talimat yapıştırılır ve ajan kurulum ile istemci bağlantısını halleder. Manuel kurulum, macOS ve Linux için sağlama toplamıyla doğrulanmış ikili dosyalar sunan curl tabanlı bir betik veya Rust 1.85 ya da üzeriyle kaynaktan derleme kullanır; Windows ikili dosyaları releases sayfasındadır. Güncel bir Git ve jq gereklidir. Başlatma, izlenen dosyalara dokunmadan koordinasyon durumunu Git ortak dizinine yazar ve ikili dosya, daha kısa olan fmg takma adına da yanıt verir.

İşin kabulü doğrulamaya bağlıdır: Foremerge, tamamlanma sözlüğüne kanmadan kayıtlı bir kontrolü kendisi çalıştırır. README, derleme veya typecheck gibi bozuk bir devri gerçekten yakalayacak hızlı bir kontrol önerir ve bu kapının CI'nin yerini almadığını not eder. Doğrulanacak anlamlı bir şeyi olmayan depolar bunun yerine tavsiye niteliğinde bir politika beyan edebilir; bu durumda kabul edilen iş UNVERIFIED olarak kaydedilir, böylece denetim izi asla bir kontrolün çalıştığı izlenimi vermez. Bir doctor komutu, kayıtlı kontrollerin gerçekten yürütülebildiğini doğrular; bu, ajan worktree'lerinde önemlidir çünkü bağımlılık dizinleri genellikle gitignore edilir ve git worktree add bunları oluşturmaz.

Neden önemli

Tek bir depoya karşı birden fazla ajan çalıştırmak rutin bir iş akışı haline geliyor ve Foremerge'in ele aldığı başarısızlık — metinsel olarak temiz ama semantik olarak yıkıcı birleşmeler — ana akım araçlara görünmezdir. Ölçülü tasarımı dikkat çekicidir: kilitler olmadan, LLM hakemliği olmadan ve dayanıklı depo olarak Git'in yerini almadan paylaşımlı farkındalık. Erken, tek makinelik, kıyaslanmamış bir MVP olmaya devam ediyor, ama çok ajanlı geliştirme ölçeklendikçe ihtiyaç duyabileceği makul bir eksik katmana — beyan edilmiş niyet koordinasyonuna — işaret ediyor.

  • #git
  • #coding-agents
  • #open-source
  • #developer-tools
  • #ai

İlgili yazılar