4 puan yazan GN⁺ 2024-09-18 | 1 yorum | WhatsApp'ta paylaş
  • Void, kod tabanında AI ajanları kullanmayı sağlayan, değişiklikleri checkpoint olarak görselleştiren ve yerel modelleri ya da host'ları içe aktarmaya imkan veren bir VS Code fork'uydu; ancak şu anda deprecated durumda ve artık katkı kabul etmiyor
  • Proje hâlâ açık kaynak olarak kalıyor ve VS Code'u fork'lamak isteyen geliştiriciler Void'in mantığını ve yapısını referans alabiliyor
  • README, React + Tailwind entegrasyonu, paketleme·imzalama·otomatik güncelleme için GitHub Actions, sıfırdan yazılmış AI provider kodu, IPC ve CSP'ye uygun yapı gibi bölümlerin incelenebileceğini belirtiyor
  • Void, mesajları doğrudan provider'a gönderdiğini ve veri saklamadığını söylüyor; autocomplete(FIM), <thinking> etiketi ve tool etiketi gibi yanıt sözdizimlerini destekliyor
  • Yeni sürüm geliştirmekten ziyade Void Forks, geçmiş Releases, Codebase Guide, HOW_TO_CONTRIBUTE ve void-builder gibi kaynaklarla fork ve yeniden kullanımı destekleyen bir durumda

Proje durumu

  • Void deprecated durumda ve artık katkı kabul etmiyor
  • Topluluğun kod katkıları ve desteği için teşekkür ediyor; Void ise açık kaynak olarak kalmaya devam ediyor
  • VS Code'u fork'lamak için başvurulabilecek iyi referanslardan biri olarak kalacağını belirtiyor

İndirme ve fork kaynakları

VS Code fork uygulamasında incelenebilecek kısımlar

  • Void, React + Tailwind'i mount ediyor
    • Normal VS Code'da bu mümkün olmadığından, React derlemesi ve Tailwind scope işlemesi için build pipeline genişletilmiş
    • Tailwind scope işlemesi için scope kullanılıyor
  • GitHub Actions kopyalanarak Void'i paketleme, imzalama ve otomatik güncelleme için kullanabilirsiniz
    • VS Code'un build pipeline'ının kapalı olduğu için bunun normalde çok zor olduğu belirtiliyor
  • AI provider kodu baştan sona doğrudan yazılmış
    • autocomplete(FIM) ve özel yanıtları destekliyor
    • ortak <thinking> etiketi, tool etiketleri vb. için sözdizimini açığa çıkarıyor
    • IPC kullanımı ve CSP gereksinimlerini karşılayan mimari referans alınabilir
  • Dosya düzenleme için özel servisler kullanılıyor
    • EditCodeService, kod stream edilirken diff'i token düzeyinde bile gösterebiliyor
    • VoidModelService, dosyaları arka planda düzenliyor ve OS dosyalarıyla metin tamponunu senkronize ediyor
  • Void'i oluşturan tüm repo listesi repos sayfasında görülebilir

Void'in özellikleri

  • Void, kod tabanında AI agents kullanılmasını sağlıyor
  • Değişiklikler checkpoint olarak kaydedilip görselleştirilebiliyor
  • Herhangi bir model veya host yerel olarak getirilebiliyor
  • Mesajları doğrudan provider'a gönderdiğini ve kullanıcı verisi saklamadığını belirtiyor
  • Bu depo, Void Desktop uygulamasının tüm kaynak kodunu içeriyor

Referans bağlantıları ve destek

1 yorum

 
GN⁺ 2024-09-18
Hacker News görüşleri
  • Yakın zamanda VSCode’u bir platform gibi kullanarak uygulamayı refactor etmeye çalışırken, etrafından dolaşması da sürdürmesi de kolay olmayan UI tasarım kararları yüzünden ciddi şekilde canım yandı
    Microsoft’un kapalı uzantı marketplace’i de açık kaynak hedefi için yardımcı olmadı
    Bunun yerine HN’de Theia(https://theia-ide.org) ile tanıştım; vakıf sahipliği, açık kaynak marketplace ve her şeyi değiştirebilme olasılığı nedeniyle açık kaynak hedefiyle çok daha uyumlu göründü
    Teoride VSCode uzantı API’siyle de uyumlu olduğundan, bu uygulamada da Theia’yı değerlendirmelerini öneririm

    • Bu arada uzantılar OpenVSX’e dağıtılabiliyor
      Bugünlerde birçok proje bunu yapmaya başladı; hepsi değil ama epey fazlası
    • Theia’nın mevcut Java IDE’si Eclipse ile bağlantılı olup olmadığını merak ediyorum
      Yoksa “eclipse” ifadesi sadece talihsiz bir isim çakışması mı, emin değilim
    • Theia Monaco üzerinde inşa edildiyse, tek tıkla geçiş gibi bir yaklaşımın mümkün olup olmadığını merak ediyorum
      Monaco editörü teoride vscode deposunun bir parçası ve ayarları/yapılandırmayı içeren “workbench” onun üst katmanında yer alıyor
  • Cursor ve Void gibi araçların mevcut editör uzantıları (VSCode uzantıları, JetBrains eklentileri) yerine neden yeni editörler yapmayı seçtiğini iyi özetleyen bir yazı olsa keşke
    Bunun uzantı API’sinin teknik sınırlamaları yüzünden mi, yoksa yeni bir editörü pazarlamanın editör uzantısından daha kolay olmasından mı kaynaklandığını merak ediyorum
    Bireyler ya da küçük şirketler için geçiş kolay olabilir, ama büyük organizasyonlar mevcut IDE’leriyle zaten birçok entegrasyon kurmuş durumda olduğundan onları bir IDE daha değiştirmeye ikna etmek zor bir talep gibi görünüyor

    • Cursor ekibinin yanıtına göre VSCode uzantılarının editör UI’sini kontrol etme yeteneği çok sınırlı
      Command-K ve Copilot++ özellikleri uzantıyla mümkün değilmiş; ileride yapmak istedikleri birçok şey de aynı şekilde
      https://forum.cursor.com/t/why-not-a-plugin/2448/2
    • İyi soru
      Bana göre uzantılar sık sık bug’lı oluyor ya da doğal biçimde entegre edilmesi zor oluyor. Örneğin Copilot’ta seçili alan zıplıyor; Codeium ve diğer açık kaynak uzantılarda da benzer sınırlamalar var
      Birçok uzantı, kullanıcının prompt girişinde hızlı seçim açılır menüsü kullanıyor ve bu bana doğal gelmiyor
      Bu tür sorunlardan kaçınmak için Cursor’daki gibi IDE’nin doğrudan sahibi olmak önemli; Cursor’un popüler olma nedeninin de bu olduğunu düşünüyorum
      IDE benimsetmenin zor olduğu doğru. Zaten popüler olan bir temel üzerinde inşa etmek, küçük bir kullanıcı kitlesine daha iyi ulaşmayı sağlayabilir; uzun vadede ise gizlilik ve iyi AI özelliklerinin merkezileştirilmesiyle büyük şirketleri de ikna etmek istiyorum
    • Cody tam da söylendiği şekilde bir uzantı olarak yapılmış ve Cursor’la rekabetçi
      “Fork” olmasının dezavantajını göze alıp Cursor kullanmam için hâlâ bir neden bulabilmiş değilim
      Gerçi son zamanlarda büyük ölçüde Aider’a geçtim
      Bir başkası gelir modelinden söz etmişti; gerçek neden bu olabilir
  • Rekabetin artması güzel ama kulağa biraz kaba gelebilir; yine de çoğu yazılım fork’u yok olup gidiyor
    Temel VSCode ya da VSCodium üzerinde çalışan açık kaynak uzantılar Continue + Claude-dev yerine bunu neden kullanmam gerektiği konusunda beni ikna etmelerini isterim
    “Microsoft da uzantı marketplace’ini kapattı” denmiş ama Open VSX Registry diye bir şey var

    • Continue ile birlikte yerel modeller kullanıp kullanmadığınızı merak ediyorum
  • Buraya kadar getirmiş olmaları kutlanacak bir şey ve şimdi eğlenceli kısmın başladığı anlaşılıyor
    Snippet benzeri sekme otomatik tamamlama sunan uzantılarla AI editörleri epey fazla ama benim bildiğim kadarıyla tüm dosyayı görmeden “tab-tab-tab-tab” ile otomatik düzeltme iş akışını düzgün şekilde uygulayan tek araç Cursor
    Muhtemelen Monaco/VSCode hack’leriyle kendi ince ayarlı modelinin, yani hazır bir büyük dil modelinden farklı bir bileşimin sonucu; “Cursor’un tüm temel özellikleri” denirken hedeflenen şeyin bu mu yoksa başka bir yere mi odaklandığını merak ediyorum
    Cursor, yerel VSCode profilime zaten indirilmiş uzantıları oldukça iyi şekilde “içe aktarabiliyordu”, ama uzantı arama için marketplace API’sini kullanırken bazen zorlanıyordu
    Başlangıç noktası olarak böyle bir yaklaşımla yetinmek daha iyi olabilir; ayrıca Microsoft ile uğraşıyorsanız brand guidelines gibi şeylere de dikkat etmeniz gerekir
    Dünyaya Microsoft API’sini “hack’liyorsunuz” diye duyurmaktan kaçınmanız iyi olur. Küçük görünen bir konu bile başarılı olursa sorun yaratabilir
    Amaç katkı sağlayacak insanları toplamaksa GitHub workflow’ları ve CI tarafını da ciddi ölçüde toparlamanız gerekir
    Şu anki commit geçmişi çoğunlukla doküman değişikliklerinden sonra review ya da kontrol olmadan doğrudan main branch’e commit atıldığını gösteriyor; kontrol eklenmiş tek ilk commit’te de Monaco kontrolü başarısız olduktan sonra bunun doğrudan devre dışı bırakılmış gibi göründüğü anlaşılıyor
    Projeyi büyütmek ya da gereken seviyede katkı sağlayıcı çekmek istiyorsanız test baseline’ı oluşturup çok daha fazla düzen kurmanız gerekir

    • Cursor kullanmamın tek nedeni de bu özellik
      Otomatik tamamlama inanılmaz iyi ve refactor yaparken neredeyse sihir gibi
      Bir ay boyunca Cursor kullandıktan sonra yeniden VSCode denedim ve karşılaştırınca Copilot gerçekten çok kötü kaldı
      Cursor kullanmaya devam etmek istiyorum ama Claude aboneliğine iki kez para vermek istemiyorum. Cursor içeride Claude kullanıyor ve ben ChatGPT yerine Claude Sonnet’i tercih ediyorum
    • Cursor’daki çok faydalı bir özellik de apply
      AI’nın ürettiği kodu benim kodumla kendi kendine birleştiriyor, ben de sadece onaylıyor ya da reddediyorum
      Bu özellikte de özel bir AI kullanılıyor gibi görünüyor; benim API anahtarımla çalışmıyor ve abonelik gerektiriyor
  • “Yapay zeka editörü” alanında rekabetin artması güzel, ama neden bunu bir VSCode eklentisi olarak yapmadıklarını merak ediyorum.
    Eklenti tarafı çok daha erişilebilir görünüyor.
    Uygulamayı zorlaştıran bir eklenti API sınırı olup olmadığını merak ediyorum.

    • Muhtemelen eklentilerden para kazanmak zor olduğu ve büyük VC değerlemelerini haklı çıkarmanın da kolay olmaması yüzündendir.
      Void, HN desteği alıyor.
    • Katılıyorum. Mükemmel olmasa da VSCode oldukça zengin bir ekosisteme sahip.
      Fork ile asıl ürün arasındaki farkları sürekli takip etmek gerekiyor ve bu süreçte eksik kalan özellikler ya da bozulan eklentilerle uğraşmayı kendi iş akışımda taşımak istemiyorum.
      Cursor oldukça cilalı bir deneyim sunuyor, ama sonunda yine VSCode’a dönüp continue.dev kullanıyorum. Çok daha ham olsa da arayüz yeterince iyi çalışıyor.
    • İyi bir soru ve eklentinin daha erişilebilir olduğunu söylemek doğru.
      Ama yalnızca eklentiyle istediğiniz yerel arayüzü oluşturmanın iyi bir yolu yok.
      Örneğin değişiklik öncesi ve sonrasını göstermek temel bir özellik, ama eklenti içinde bu doğal hissettirmiyor.
      Codeium gibi eklentiler en basit yöntem olarak dosyanın içine doğrudan <<<<<<< DIFF >>>>>>>> gibi şeyler yazıyor ve bu da sözdizimi vurgusunu bozuyor.
      Copilot gibi diğer eklentilerde de çok hata var.
      Void şu anda eklentilerin üzerine inşa edilmiş durumda, ama daha yerel bir kullanıcı deneyimi oluşturmak için IDE’nin bazı bölümlerini de değiştirip araya ekliyor.
    • Birçok kişi VSC yerine JetBrains tercih ediyor.
      Örneğin şu anda benim bir numaralı yapay zeka editörüm Zed.dev; JetBrains dahil çeşitli keymap’leri çok kolay ayarlayabiliyorsunuz.
      https://zed.dev/
    • Bilmiyorum ama şu an continue gerçekten çok kötü.
      Vim kısayolları dahil tüm VSCode ortamımı bozuyor.
  • Bunu yapmak için gerçekten tüm editöre “sahip olmak” gerekip gerekmediğinden emin değilim.
    Upstream ile senkron kalmayı sürdürmek başlı başına büyük bir yük ve bunun karşılığında ne kazanıldığını göremiyorum.
    Başkalarının da dediği gibi alternatif registry’ler var ve kullanıcıya tüm editörü indirip kurdurmaktansa bağımsız bir eklentinin nasıl kurulacağını anlatmak daha kolay.
    Neden sadece kendi Copilot eklentinizi yapıp bir ollama instance’ına bağlamıyorsunuz diye merak ediyorum.
    Continue’un yaptığı şey zaten bu değil mi? https://marketplace.visualstudio.com/items?itemName=Continue...

  • Bu iş henüz indirilemeyecek kadar erken aşamada mı? Bir kod editörü için neden bir Discord sunucusuna girmem gerektiğini anlamıyorum.
    VS Code tüm bu özellikleri eklerse planın ne olduğunu merak ediyorum.

    • Kod burada: https://github.com/voideditor/void/tree/main/extensions/void
      Ama şu anda gerçekten çok temel düzeyde. Yan panelden büyük dil modeli çağrıları yapıp farkları uygula/reddet görünümü oluşturan minimal bir uygulamaya daha yakın.
      Şimdilik neredeyse bir hafta sonu projesi seviyesinde.
    • Belki de olay tam olarak budur.
      Birinin Microsoft tarafından satın alınıp sonunda VS Code’un bir parçası olacağını izleme oyunu olabilir.
  • PearAI de var. Kendini “VSCode ve Continue fork’u olan açık kaynak yapay zeka kod editörü” diye tanımlıyor.
    Bu alan giderek kalabalıklaşıyor: cursor.sh, continue.dev, double.bot, supermaven, codium.ai, PearAI ve şimdi de Void var.
    https://github.com/trypear/pearai-app

    • Diğerlerini kullandıysan, özellikle hoşuna gitmeyen noktaların ne olduğunu bilmek isterim.
      Ben https://double.bot yapımcılarından biriyim.
  • Keşke biri Omnivim2’yi fork’layıp VS Code ile daha iyi rekabet edebilir hale getirse.
    Anladığım kadarıyla bu editör VS Code gibi görünüyor ama yerel olarak derleniyor ve VS Code eklentilerini destekliyor.
    Ne yazık ki proje terk edilmiş gibi görünüyor ve ReasonML ile yazılmış.
    Geliştirme araçlarının web tarayıcısı merkezli inşa edilmesinden bıktım.
    90’larda ve 2000’lerde, bugünkü kadar karmaşık olmak zorunda olmayan tam anlamıyla yerel uygulamalar vardı.
    Ayrıca içten içe Vim tabanlı çalışıyor olması da var; bana sorarsanız bu bir artı.
    https://github.com/onivim/oni2

  • Bu, aynı kullanıcının 4 gün önce açtığı başka bir Show HN gönderisinin mükerrer paylaşımı gibi görünüyor.
    https://news.ycombinator.com/item?id=41523197

    • Gönderi henüz yeterince ilgi almadıysa az sayıda yeniden paylaşım sorun değil.
      FAQ’da da yazıyor: https://news.ycombinator.com/newsfaq.html#reposts
    • Birkaç gün önce daha küçük çaplı bir lansman yapmıştık, ama o geri bildirimlere dayanarak GitHub katkı sayfasını, web sitesini ve logoyu epey değiştirdik.
      Sadece hızlıca yayımlamaya çalışıyoruz.
    • Yani iki kez mi lansman yaptınız? Rekabetin sert olduğu bir ortamda olabildiğince çok lansman yapmak gerekir.
    • Oldukça makul bir uygulama sayılır.