Yapay Zeka Kurallarımı İstediler, Ama Sadece Verip Geçemedim Yazılım

Yapay Zeka Kurallarımı İstediler, Ama Sadece Verip Geçemedim

Bir ekip lideri AI destekli geliştirme kuralları oluşturdu, ancak kurallar repo'ya özgü olduğu için diğer ekiplere aktarılamadı.

Bir ekip lideri, ekibin AI destekli geliştirmeye geçeceğini duyurdu. Herkes başını salladı. Kimse pazartesi sabahı bunun ne anlama geldiğini sormadı. Bir süre önce ben de aynı durumdaydım. Üzerinde çalıştığım bir projede AI destekli geliştirme kullanmaya başlamamız gerekiyordu ve ekip bu konuda yeniyiydi. Kimsenin bir ajanın takip etmesi için yazılı kuralları yoktu. Kimsenin yükleyebileceği beceriler tanımlanmamıştı. Spesifik repomuz içinde bunun nasıl çalışması gerektiğine dair ortak bir fikir yoktu. Birinin ilk adımı atması gerekiyordu. O kişi bendim.

Kurallar işe yaradı çünkü onları tek bir repo için oluşturdum. O proje için bir dizi kural ve beceri hazırlamak için zaman harcadım. Genel olanlardan değil. Bunları, reponun gerçekte nasıl yapılandırıldığına, kurallarına, düzenine ve yeni bir mühendisin genellikle etrafa sorarak öğrenmesi gereken şeylere sıkı sıkıya bağlı şekilde şekillendirdim. Bir ajanın o kod tabanında çalışırken, insan bir ekip arkadaşının ilk iki haftada öğreneceği şeyleri zaten bilmesini istedim.

Bir demo yaptım. İyi karşılandı. O kadar iyi ki, ekip genelinde paylaşıldı ve diğer ekiplerin de öğrenebileceği bir şey haline geldi. Demoyu tekrar yaptım. Aynı tepki. Ardından birkaç geliştirici gerçek kural ve beceri dosyalarını istedi. 'Tabii' dedim ve sonra onlara ne vereceğime gerçekten baktım. Sorun, diğer insanlar dahil olmak istediğinde ortaya çıktı. Dosyalar kopyalanıp yapıştırılabilecek türden değildi. Kurallar, belirli bir repoya özgü klasör adlarına, modül sınırlarına ve kalıplara atıfta bulunuyordu. Olduğu gibi aktarmak, kısayol olarak sunulan ama projeleri için yanlış olan tavsiyeleri aktarmak anlamına gelirdi.

Bu yüzden onlara referans olarak kullanmalarını söyledim. Yapıya bakın, mantığı anlayın, kendi reponuza uyarlayın. Bu doğru bir tavsiyeydi. İnsanların başını salladığını gördüm ama sonra sessizce bunu atladılar. Aslında başından beri yanlış sorunu çözüyordum. Bunu bir dokümantasyon sorunu olarak düşünüyordum: İyi kurallar yaz, onları iyi açıkla, insanların fikri kopyalamasına izin ver. Oysa asıl sorun bir üretim sorunuydu. İşe yarayan kurallar, belirli bir yığın için oluşturulanlardı, genel olarak yazılıp birinin tercüme etmesi için bırakılanlar değil.

Gelecekte Ne Bekleniyor?

Diğer ekiplere yayılması beklenen şey, beklendiği gibi gitmedi. Onlara ulaşan, kimsenin gerçeğe dönüştürmek için zamanı olmayan bir referanstı. Bu boşluk, baktığımda ya da bakmadığımda oradaydı. İnşa etmek istediğim şey, başka bir genel koşum takımı değildi. Bir reponun gerçek yığınına bakıp, ilk günden itibaren çalışan kurallar ve beceriler üreten bir şey istiyordum; kullanışlı olmadan önce bir çeviri adımı gerektirmeyen kurallar.

Sonuç ve Değerlendirme

Bu sorunla oturduğumda, hemen arkasından ikinci bir sorun ortaya çıktı ve bunun da en az ilki kadar önemli olduğu ortaya çıktı. Her benimseme planı, ekip başına tek bir AI aracı olduğunu varsayıyordu. Pratikte bu varsayım neredeyse anında bozuluyor. Bir mühendis Cursor istiyor. Bir diğeri zaten Claude Code'da kas hafızası oluşturmuş. Başka biri Windsurf'ü test ediyor ya da şirketin lisansladığı için Copilot'a takılıp kalmış ya da yeni çıkan bir şey nedeniyle Antigravity'yi denemek istiyor. Kimse hangi düzenleyiciyi veya ajanı kullanacağı söylenmek istemiyor ve bir takıma tek bir seçeneği zorlamak, kurallar sorunundan tamamen ayrı bir sürtüşme türü. Yalnızca bir araç için çalışan bir benimseme çabası, gerçek bir ekip benimsemesi değildir. Bu, bir kişinin benimsemesi, bir dağıtım gibi giydirilmiş halidir.

Sorunun aldığı şekil buydu: 'Daha iyi kurallar yaz' değil. Belirli bir yığın için oluşturulmuş kurallar ve beceriler üret ve bunların, belirli bir mühendisin halihazırda seçmiş olduğu araçlardan hangisi olursa olsun çalışmasını sağla. İşte bu, FARE ve BARE oldu: ön yüz ve arka yüz AI başlangıç tarifleri, npm CLI araçları olarak yayınlandı. Birini bir projeye yönlendirin; projenin gerçek yığınına göre şekillendirilmiş kurallar, beceriler ve iş akışı bağlamı oluşturur, beş araç için adaptörlerle birlikte: Cursor, Claude Code, Windsurf, Copilot ve Antigravity. Çıktının hemen kullanılması amaçlanır, önce uyarlanması değil.

Önemli Gelişmeler

Dürüst olmak gerekirse, bu orijinal yargılama çağrısını ortadan kaldırmadı. Bir şey hala 'bu yığın için iyi kurallar'ın ne anlama geldiğine karar vermek zorunda çünkü her zaman görüşlüdür. CLI sadece bu kararın, her mühendis, proje başına, son teslim tarihi baskısı altında, son derece tutarsız sonuçlarla bir kez alınması yerine, araç tarafından bir kez alınması anlamına geliyor. İlk taslağını çizdiğim kapsam, yayınlanandan daha büyüktü. Daha derin projeye özgü özelleştirme, ek entegrasyonlar ve daha otomatik bağlam takibi ile ilgili fikirler vardı; bunları bıraktım ya da sonraki sürümlere erteledim. Bunların bir kısmı makul bir v1 sınırıydı. Bir kısmı ise ilginç versiyonu değil de kullanışlı olanı inşa etmek istemem ve kendimi bunu yaparken yakalamamdı. Basit tutmak kolay varsayılan değildi. Bu bir karardı ve yazarken birden fazla kez vermek zorunda kaldığım bir karar. Bunun diğer ekiplerin sorunları için doğru şekil olup olmadığını ya da sadece benim sürekli karşılaştığım sorun için doğru şekil olup olmadığını henüz bilmiyorum. FARE veya BARE'yi kendi projenizde denerseniz, nerede işe yaradığını ve nerede yaramadığını gerçekten bilmek isterim.

Kaynak: dev.to

Paylaş: