Cursor IDE ile vibe coding yapmaya başladığınızda ilk günler her şey sihirli gibidir. Ancak projeniz büyüdükçe ve dosyalar arttıkça can sıkıcı bir döngüye girersiniz: Cursor sürekli aynı hataları yapmaya başlar.
Ona defalarca "Sadece Türkçe değişken isimleri kullan" veya "Tasarımda Material UI kütüphanesini baz al" demenize rağmen, yeni bir sohbet (chat) başlattığınızda yapay zeka sanki her şeyi unutmuş gibi fabrika ayarlarına döner. Her seferinde aynı kuralları tekrar tekrar yazmak hem zamanınızı çalar hem de token (maliyet) israfına yol açar.
İşte tam bu noktada, profesyonel geliştiricilerin en büyük sırrı devreye giriyor: .cursorrules dosyası. Gelin bu dosyanın ne olduğuna ve projelerinizi nasıl bir üst seviyeye taşıyacağına yakından bakalım.
.cursorrules Dosyası Nedir?
Basitçe özetlemek gerekirse .cursorrules, projenizin ana (kök) dizininde bulunan ve Cursor'ın yapay zeka asistanına "Bu projede kod yazarken şu kuralların dışına asla çıkma" diyen gizli bir anayasadır.
Siz Composer'ı (Ctrl + I) veya Chat'i (Ctrl + L) her açtığınızda, Cursor arka planda önce bu dosyayı okur. Böylece sizin her defasında "Benim projem Flutter ile yazıldı, state management olarak Riverpod kullanıyorum" demenize gerek kalmaz; yapay zeka bağlamı çoktan anlamış olarak size cevap verir.
Neden Kullanmalısınız?
- Tutarlılık: Projedeki tüm kodların aynı standartta ve mimaride yazılmasını sağlar.
- Zaman Tasarrufu: Promptlarınızı (istemlerinizi) kısaltır. "Şunu şöyle yap" demek yerine sadece "Giriş ekranını kodla" dersiniz, o zaten kuralları
.cursorrules'dan çeker. - Halüsinasyonu Önler: Yapay zekanın kafasına göre gereksiz kütüphaneler eklemesini veya eski kodlama yöntemlerini kullanmasını engeller.
.cursorrules Dosyası Nasıl Oluşturulur?
Kurulum işlemi son derece basittir:
- Cursor'da projenizi açın.
- Sol taraftaki dosya ağacının en üstüne (ana klasöre) sağ tıklayın ve "New File" (Yeni Dosya) deyin.
- Dosyanın adını tam olarak şöyle yazın:
.cursorrules(Başındaki noktayı unutmayın). - Dosyayı açın ve kurallarınızı yazmaya başlayın.
Gerçek Bir Projeden .cursorrules Şablonu (E-E-A-T Deneyimi)
İnternetteki teorik şablonlar yerine, size kendi geliştirme sürecimden somut bir örnek vermek istiyorum. Yakın zamanda Google Play Store'da yayınladığım Almanca dil öğrenme uygulaması German Chunks'ı geliştirirken, Cursor'ı doğru yönlendirmek için aşağıdaki kuralları kullandım.
Bu dosya, yapay zekanın uygulamanın diline, mimarisine ve tasarım sistemine sadık kalmasını sağladı:
German Chunks (Beta) - Cursor Kuralları
Sen 10 yıllık deneyimli bir Kıdemli Flutter (Senior Flutter) ve Dart geliştiricisisin. Bu projede kod yazarken aşağıdaki kurallara KESİNLİKLE uymalısın:
1. Mimari ve Teknoloji Yığını
Dil: DartFramework: FlutterState Management: Sadece Riverpod kullan. Provider veya GetX kullanma.Veritabanı: Firebase Firestore
2. Kodlama Standartları
Sadece null-safety destekleyen güncel Dart kodları yaz.Tüm değişken, fonksiyon ve sınıf isimlerini İngilizce yaz. (Örn: getGermanWords() )Kod içindeki açıklama satırlarını (comment) sadece Türkçe yaz.Eski (deprecated) olmuş hiçbir Flutter widget'ını kullanma.
3. Proje Spesifik Kurallar (ÖNEMLİ)
Bu bir Almanca dil öğrenme uygulamasıdır. Ekrana basılacak örnek (dummy) metinler her zaman Almanca olmalıdır.Almanca karakterlerin (ä, ö, ü, ß) UTF-8 formatında doğru işlendiğinden her zaman emin ol.Tasarımda (UI) koyu tema (Dark Mode) varsayılan olarak kabul edilmeli, vurgu renkleri olarak Material 3 standartları kullanılmalıdır.
4. Problem Çözme
Hata ayıklarken (debugging) bana sadece düzeltilmiş kodu verme. Hatanın nedenini kısaca açıkla, ardından çözümü sun.Emin olmadığın paketleri eklemek yerine önce bana sor.
Etkili Bir .cursorrules Yazmanın Püf Noktaları
Kendi kurallarınızı yazarken şu detaylara dikkat etmeniz, Prompt Mühendisliği açısından harikalar yaratacaktır:
- Emir Kipleri Kullanın: "Yaparsan iyi olur" yerine "Sadece bunu kullan", "Asla kullanma" gibi net, keskin ifadeler tercih edin.
- Çok Uzatmayın: Cursor bu dosyayı her sorunuzda okuduğu için, destan yazmak projenizi yavaşlatabilir ve yapay zekanın kafasını karıştırabilir. Sadece en hayati kuralları ekleyin (10-20 satır idealdir).
- Proje Büyüdükçe Güncelleyin: Yeni bir veritabanına mı geçtiniz? Hemen
.cursorrulesdosyanızı açıp o kuralı değiştirin. Bu dosya, projenizle birlikte yaşayan canlı bir belgedir.
Sonuç
Vibe coding yaparken kontrolü yapay zekaya tamamen bırakmak yerine, oyunun kurallarını sizin belirlemeniz gerekir. Projenizin ana dizinine ekleyeceğiniz basit bir .cursorrules dosyası, Cursor'ı sıradan bir asistandan, sizin zihninizi okuyan kıdemli bir yazılım mimarına dönüştürür.
Kendi kurallarınızı yazın, dosyayı kaydedin ve yeni bir sohbet başlatarak yapay zekanın ne kadar akıllandığına bizzat şahit olun.
Bunları da Oku: