[Go to site: main page, start]

Skip to main content

Command Palette

Search for a command to run...

Özelleştir

Kurallar

Kurallar, Agent için sistem düzeyinde talimatlar sağlar. İstemleri, betikleri ve daha fazlasını bir araya getirerek iş akışlarını ekibiniz genelinde yönetmeyi ve paylaşmayı kolaylaştırır.

Cursor dört tür kuralı destekler:

Proje Kuralları

.cursor/rules içinde saklanır, sürüm kontrolündedir ve kod tabanınıza özgüdür.

Kullanıcı Kuralları

Cursor ortamınızın tamamında geçerlidir. Agent (Chat) tarafından kullanılır.

Ekip Kuralları

Kontrol panelinden yönetilen, ekip genelinde geçerli kurallardır. ekip ve Kurumsal planlarında kullanılabilir.

AGENTS.md

Markdown biçimindeki Agent talimatları. .cursor/rules için basit bir alternatiftir.

Kurallar nasıl çalışır

Büyük dil modelleri, tamamlamalar arasında belleği korumaz. Kurallar, istem düzeyinde kalıcı ve yeniden kullanılabilir bağlam sağlar.

Uygulandığında, kural içerikleri model bağlamının başına eklenir. Bu sayede yapay zekâ, kod oluşturma, düzenlemeleri yorumlama veya iş akışlarında yardımcı olma konusunda tutarlı yönlendirmeler alır.

Proje kuralları

Proje kuralları, .cursor/rules dizininde .mdc dosyaları olarak yer alır ve sürüm kontrolü altında tutulur. Yol örüntüleriyle kapsamları belirlenebilir, manuel olarak çağrılabilir veya uygunluğa göre dahil edilebilir.

Proje kurallarını şunlar için kullanın:

  • Kod tabanınıza özgü alan bilgilerini tanımlamak
  • Projeye özgü iş akışlarını veya şablonları otomatikleştirmek
  • Stil veya mimari kararları standartlaştırmak

Kural dosyası yapısı

Her kural, istediğiniz gibi adlandırabileceğiniz bir .mdc dosyasıdır. Proje kurallarında .mdc uzantısı kullanılmalıdır. .cursor/rules içindeki düz .md dosyaları, description, globs ve alwaysApply belirtmek için frontmatter içermediğinden kurallar sistemi tarafından yoksayılır. Düz markdown kullanmayı tercih ediyorsanız AGENTS.md kullanın.

.cursor/rules/  react-patterns.mdc       # Proje kuralı olarak tanınır  api-guidelines.md        # Yoksayılır (yanlış uzantı)  frontend/                # Kuralları klasörler içinde düzenleyin    components.mdc

Kural yapısı

Her kural, frontmatter meta verileri ve içerikten oluşan bir markdown dosyasıdır. description, globs ve alwaysApply özelliklerini değiştiren tür açılır menüsünden kuralların nasıl uygulanacağını belirleyin.

Kural TürüAçıklama
Always ApplyHer chat oturumunda uygulanır
Apply IntelligentlyAgent, açıklamaya göre ilgili olduğuna karar verdiğinde
Apply to Specific FilesDosya, belirtilen bir desenle eşleştiğinde
Apply ManuallyChat'te @ ile bahsedildiğinde (ör. @my-rule)

Arka planda, üç frontmatter alanı bir kuralın ne zaman içerileceğini belirlemek için birlikte çalışır:

alwaysApplydescriptionglobsDavranış
trueHer zaman içerilir. Glob'lar ve açıklama yoksayılır.
falsesağlandıEşleşen bir dosya bağlamdayken otomatik olarak eklenir.
falsesağlandıatlandıAgent açıklamayı okur ve ilgili olduğunda kuralı ekler.
falseatlandıatlandıYalnızca chat'te kuraldan @ ile bahsettiğinizde içerilir.
Always applied
---alwaysApply: true---- All source files must include the company copyright header- When you are unsure about implementation details, read the relevant  source files before proposing changes- Never modify generated files in the `dist/` or `build/` directories
Auto-attached by file pattern
---globs: src/components/**/*.tsxalwaysApply: false---- Use named exports, not default exports- Co-locate styles in a module CSS file next to the component- Keep components under 200 lines. Extract subcomponents into the same  directory when a file grows beyond that- Prefer composition over prop drilling. Pass children or render props  instead of threading data through multiple layers
Agent-selected based on description
---description: RPC service conventions and patterns for the backendalwaysApply: false---- Define each service in its own file under `src/services/`- Always validate inputs at the service boundary before passing data  to internal functions- Return structured error objects with a `code` and `message` field,  never throw raw strings- Add a `@service-template.ts` reference file when creating a new  service for the standard boilerplate
Manual — only via @-mention
---alwaysApply: false---- Every database migration must have both `up` and `down` functions  so it can be fully reversed- Never alter a column type in-place. Add a new column, backfill,  then drop the old one in a separate migration- Reference the template for the expected file structure@migration-template.sql

desen örnekleri

Bir kuralı belirli dosya veya dizinlerle sınırlamak için globs kullanın. Birden fazla kalıbı virgülle ayırın.

KalıpEşleşmeler
*Tek bir dosya adı bölümü
**İstenilen sayıda dizin (özyinelemeli)
*.tsKökteki tüm .ts dosyaları
**/*.tsHerhangi bir dizindeki tüm .ts dosyaları
src/**src/ altındaki tüm dosyalar
src/**/*.tsxsrc/ altındaki tüm .tsx dosyaları
docs/**/*.md, docs/**/*.mdxdocs/ altındaki .md ve .mdx dosyaları (virgülle ayrılmış)
tailwind.config.*Herhangi bir uzantıya sahip tailwind.config

Kural oluşturma

Kural oluşturmanın iki yolu vardır:

  • Sohbette /create-rule: Agent'ta /create-rule yazın ve istediğinizi açıklayın. Agent, uygun frontmatter ile kural dosyasını oluşturur ve .cursor/rules dizinine kaydeder.
  • özelleştir'den: Kenar çubuğunda özelleştir'ı açın, kural'a gidin ve Add Rule'a tıklayın. Bu işlem .cursor/rules dizininde yeni bir kural dosyası oluşturur. özelleştir'den tüm kuralları ve durumlarını görebilirsiniz.

En İyi Uygulamalar

İyi kurallar odaklı, uygulanabilir ve kapsamı nettir.

  • Kuralları 500 satırın altında tutun
  • Büyük kuralları birden fazla, birleştirilebilir kurala bölün
  • Somut örnekler veya başvurulan dosyalar sunun
  • Belirsiz yönlendirmelerden kaçının. Kuralları açık ve net iç dokümanlar gibi yazın
  • Sohbette istemleri tekrarlarken kuralları yeniden kullanın
  • İçeriklerini kopyalamak yerine dosyalara başvurun—bu, kuralları kısa tutar ve kod değiştikçe güncelliğini yitirmelerini önler

Kurallarda kaçınılması gerekenler

  • Tüm stil kılavuzlarını kopyalamak: Bunun yerine bir linter kullanın. Agent yaygın stil kurallarını zaten bilir.
  • Olası tüm komutları belgelemek: Agent npm, git ve pytest gibi yaygın araçları bilir.
  • Nadiren geçerli olan uç durumlar için talimat eklemek: Kuralları sık kullandığınız kalıplara odaklayın.
  • Kod tabanınızda zaten bulunanları tekrarlamak: Kodu kopyalamak yerine asıl örneklere yönlendirin.

Tüm ekibinizin yararlanması için kurallarınızı git'e ekleyin. Agent'ın bir hata yaptığını gördüğünüzde kuralı güncelleyin. Hatta Agent'ın kuralı sizin için güncellemesi için bir GitHub issue veya PR'da @cursor etiketini kullanabilirsiniz.

Kural dosyası biçimi

Her kural, frontmatter meta verileri ve içerikten oluşan bir markdown dosyasıdır. Frontmatter meta verileri, kuralın nasıl uygulanacağını belirlemek için kullanılır. İçerik, kuralın kendisidir.

---description: "This rule provides standards for frontend components and API validation"alwaysApply: false---...rest of the rule content

alwaysApply true ise kural her chat session'a uygulanır. Aksi takdirde, uygulanıp uygulanmayacağına karar vermesi için kuralın açıklaması Cursor Agent'a sunulur.

Örnekler

Bu kural, ön uç bileşenleri için standartlar belirler:

Bileşenler dizininde çalışırken:

  • Stil için her zaman Tailwind kullanın
  • Animasyonlar için Framer Motion kullanın
  • Bileşen adlandırma kurallarına uyun

Bu kural, API uç noktaları için doğrulama zorunluluğu getirir:

API dizininde:

  • Tüm doğrulamalar için zod kullanın
  • Dönüş türlerini zod şemalarıyla tanımlayın
  • Şemalardan oluşturulan türleri dışa aktarın

Bu kural, Express hizmetleri için bir şablon sunar:

Express hizmeti oluştururken bu şablonu kullanın:

  • RESTful ilkelerine uyun
  • Hata işleme ara yazılımı ekleyin
  • Uygun günlük kaydını ayarlayın

@express-service-template.ts

Bu kural, React bileşenlerinin yapısını tanımlar:

React bileşenleri şu düzeni izlemelidir:

  • Props arayüzü en üstte
  • Bileşen adlandırılmış dışa aktarma olarak
  • Stiller en altta

@component-template.tsx

Bu kural, uygulama analizini otomatikleştirir:

Uygulamayı analiz etmeniz istendiğinde:

  1. npm run dev ile geliştirme sunucusunu çalıştırın
  2. Konsoldan günlükleri alın
  3. Performans iyileştirmeleri önerin

Bu kural, dokümantasyon oluşturmaya yardımcı olur:

Dokümantasyon taslağı hazırlamaya şu yollarla yardımcı olun:

  • Kod yorumlarını çıkarın
  • README.md'yi analiz edin
  • Markdown dokümantasyonu oluşturun

Önce @reactiveStorageTypes.ts içinde açıp kapatılacak bir özellik oluşturun.

@reactiveStorageService.tsx içindeki INIT_APPLICATION_USER_PERSISTENT_STORAGE'ye varsayılan bir değer ekleyin.

Beta özellikleri için açıp kapatma denetimini @settingsBetaTab.tsx içinde, diğerleri için ise @settingsGeneralTab.tsx içinde ekleyin. Genel onay kutuları için açıp kapatma denetimleri <SettingsSubSection> olarak eklenebilir. Örnekler için dosyanın geri kalanına bakın.

<SettingsSubSection  label="Your feature name"  description="Your feature description"  value={    vsContext.reactiveStorageService.applicationUserPersistentStorage      .myNewProperty ?? false  }   => {    vsContext.reactiveStorageService.setApplicationUserPersistentStorage(      "myNewProperty",      newVal,    );  }}/>

Uygulamada kullanmak için reactiveStorageService'i içe aktarın ve bu özelliği kullanın:

const flagIsEnabled =  vsContext.reactiveStorageService.applicationUserPersistentStorage    .myNewProperty;

Örnekleri sağlayıcılarda ve çerçevelerde bulabilirsiniz. Topluluğun katkıda bulunduğu kurallar, çevrimiçi kitle kaynaklı koleksiyonlarda ve depolarda yer alır.

Ekip Kuralları

Ekip ve Kurumsal planları, Cursor kontrol paneli üzerinden kuruluş genelinde kural oluşturabilir ve uygulayabilir. Yöneticiler, her kuralın ekip üyeleri için zorunlu olup olmayacağını yapılandırabilir.

Ekip Kuralları, diğer kural türleriyle birlikte çalışır ve kuruluş standartlarının tüm projelerde korunmasını sağlamak için önceliklidir. Bireysel kurulum veya yapılandırma gerektirmeden, ekibiniz genelinde tutarlı kodlama standartları, uygulamaları ve iş akışları sağlamanın güçlü bir yolunu sunar.

Ekip Kurallarını Yönetme

Ekip yöneticileri, Cursor kontrol panelinden doğrudan kurallar oluşturup yönetebilir:

Ekip kuralları oluşturulduktan sonra tüm ekip üyelerine otomatik olarak uygulanır ve kontrol panelinde görünür:

Etkinleştirme ve zorunlu uygulama

  • Bu kuralı hemen etkinleştir: İşaretlendiğinde, kural oluşturulur oluşturulmaz etkinleşir. İşaretlenmediğinde, kural taslak olarak kaydedilir ve daha sonra etkinleştirilene kadar uygulanmaz.
  • Bu kuralı zorunlu uygula: Etkinleştirildiğinde, kural tüm ekip üyeleri için zorunlu olur ve özelleştir bölümünde devre dışı bırakılamaz. Zorunlu uygulanmadığında, ekip üyeleri özelleştir'deki Ekip Kuralları altında kuralı kapatabilir.

Biçim ve Ekip Kurallarının uygulanışı

  • İçerik: Ekip Kuralları serbest biçimli metinlerdir. Proje Kurallarındaki klasör yapısını kullanmazlar.
  • Glob desenleri: Ekip Kuralları, dosya kapsamına göre uygulama için glob desenlerini destekler. Bir glob deseni ayarlandığında (ör. **/*.py), kural yalnızca eşleşen dosyalar bağlamda olduğunda uygulanır. Glob deseni olmayan kurallar her konuşmaya uygulanır.
  • Uygulama kapsamı: Bir Ekip Kuralı etkinleştirildiğinde (zorunlu değilse ve kullanıcı tarafından devre dışı bırakılmadıysa), ilgili ekibin tüm repo ve projelerinde Agent (Chat) için model bağlamına eklenir.
  • Öncelik: Kurallar şu sırayla uygulanır: Ekip Kuralları → Proje Kuralları → Kullanıcı Kuralları. Geçerli tüm kurallar birleştirilir; yönergeler çakıştığında önce gelen kaynaklar önceliklidir.

Kuralları İçe Aktarma

Mevcut yapılandırmaları yeniden kullanmak veya diğer araçlardaki kuralları içe aktarmak için harici kaynaklardan kural içe aktarabilirsiniz.

Uzak kurallar (GitHub üzerinden)

Erişiminiz olan, herkese açık veya özel herhangi bir GitHub deposundan kuralları doğrudan içe aktarın.

  1. Kenar çubuğunda özelleştir'ı açın
  2. kural bölümüne gidip Add Rule'a tıklayın
  3. Remote Rule (Github) seçeneğini belirleyin
  4. Kuralları içeren GitHub depo URL'sini yapıştırın. Cursor, repodaki tüm .mdc dosyalarını tarar.
  5. Cursor, kuralları projenize çeker ve senkronize eder

Kurallar .cursor/rules/imported/<repoName> konumuna yerleştirilir. Kurallar göreli yollarını da korur; bu nedenle dir/rule.mdc, .cursor/rule/imported/<repoName>/dir/rule.mdc olarak içe aktarılır.

AGENTS.md

AGENTS.md, agent talimatlarını tanımlamak için kullanılan basit bir markdown dosyasıdır. Basit kullanım senaryolarında .cursor/rules yerine proje kök dizininize yerleştirin.

Proje Kurallarından farklı olarak AGENTS.md, meta veri veya karmaşık yapılandırmalar içermeyen düz bir markdown dosyasıdır. Yapılandırılmış kuralların ek yükü olmadan basit ve okunabilir talimatlara ihtiyaç duyan projeler için idealdir.

Cursor, proje kök dizinindeki ve alt dizinlerdeki AGENTS.md dosyalarını destekler.

# Proje Talimatları## Kod Stili- Tüm yeni dosyalarda TypeScript kullanın- React'te işlevsel bileşenleri tercih edin- Veritabanı sütunlarında snake_case kullanın## Mimari- Depo desenini izleyin- İş mantığını hizmet katmanlarında tutun

İyileştirmeler

Alt dizinlerde iç içe AGENTS.md desteği artık kullanılabilir. Projenizin herhangi bir alt dizinine AGENTS.md dosyaları ekleyebilirsiniz; bu dosyalar, ilgili dizindeki veya alt dizinlerindeki dosyalarla çalışırken otomatik olarak uygulanır.

Bu sayede, üzerinde çalıştığınız kod tabanı alanına göre agent talimatlarını daha ayrıntılı biçimde denetleyebilirsiniz:

project/  AGENTS.md              # Genel talimatlar  frontend/    AGENTS.md            # Ön uca özel talimatlar    components/      AGENTS.md          # Bileşene özel talimatlar  backend/    AGENTS.md            # Arka uca özel talimatlar

İç içe AGENTS.md dosyalarındaki talimatlar, üst dizinlerdeki talimatlarla birleştirilir; daha spesifik talimatlar önceliklidir.

Kullanıcı Kuralları

Kullanıcı Kuralları, özelleştir → Kurallar bölümünde tanımlanan ve tüm projelerde geçerli olan genel tercihlerdir. Agent (Chat) tarafından kullanılır; tercih edilen iletişim tarzını veya kodlama kurallarını belirlemek için idealdir:

Lütfen kısa ve öz yanıt verin. Gereksiz tekrarlardan ve dolgu ifadelerden kaçının.

SSS

Kural türünü kontrol edin. Apply Intelligently için bir açıklama tanımlandığından emin olun. Apply to Specific Files için dosya deseninin referans verilen dosyalarla eşleştiğinden emin olun.

Evet. Kuralınızın bağlamına dosya eklemek için @filename.ts kullanın. Kuralları manuel olarak uygulamak için sohbette kurallardan @bahsedebilirsiniz.

Evet, Agent'tan sizin için yeni bir kural oluşturmasını isteyebilirsiniz.

Hayır. Kurallar Cursor Tab'i veya diğer yapay zekâ özelliklerini etkilemez.

Hayır. Kullanıcı Kuralları Inline Edit'e (Cmd/Ctrl+K) uygulanmaz. Yalnızca Agent (Chat) tarafından kullanılır.