7-dars / 12 dars2-modul. Cursor bilan ishlash
Akademiya/Vibe Coding/7-dars. .cursorrules va loyiha konteksti — AI ni loyihangizga moslash
O'rta14 daqiqa

7-dars. .cursorrules va loyiha konteksti — AI ni loyihangizga moslash

.cursorrules — bu loyiha ildizida yaratiladigan maxfiy qurol. Siz AI ga qoidalar berasiz: qaysi tilni ishlatsin, qanday stil saqlasinn, qanday kutubxonalarni tanlasinn. Natijada AI har safar izchil va loyihangizga mos kod yaratadi.

Mavzu izohi

.cursorrules (yoki .cursor/rules papkasi) — bu loyihangiz ildizida yaratiladigan fayl bo'lib, AI ga doimiy ko'rsatmalar beradi. Har safar siz Chat yoki Agent ishlatganingizda, Cursor avval bu faylni o'qiydi va qoidalarga amal qiladi.

Misol: agar siz '.cursorrules' ga 'Har doim TypeScript ishlatsin, tailwind CSS qo'llasin, funksiya nomlari camelCase da bo'lsin' deb yozsangiz — AI hech qachon JavaScript yaratmaydi, hech qachon oddiy CSS yozmaydi va nomlarni doim to'g'ri format da beradi.

Bu vibe coding uchun juda muhim chunki: siz har safar promptda 'TypeScript ishlatsin' deb yozishingiz shart emas. Bir marta rules ga yozsangiz — AI doim amal qiladi. Bu vaqt tejaydi va natija izchilligini ta'minlaydi.

Kontekst boshqaruvi kengroq tushuncha: .cursorrules dan tashqari, Cursor loyihangizning package.json, tsconfig, README va boshqa konfiguratsiya fayllarini ham o'qiydi. Siz @ mentions bilan qo'shimcha kontekst berasiz. Bularning barchasi AI javob sifatini oshiradi.

Bu darsdan nima olasiz

  • .cursorrules faylini yaratish va to'g'ri joylashtirish
  • Loyiha uchun samarali qoidalar yozish
  • AI natijalarini izchil (consistent) qilish
  • Loyiha kontekstini to'g'ri boshqarish (@mentions, .cursorignore)
  • .cursor/rules papkasi bilan murakkab qoidalar tizimi qurish

Chuqurroq tushuntirish

.cursorrules fayli strukturasi: Fayl oddiy matn (markdown yoki plain text). AI uni to'liq o'qiydi va system prompt sifatida ishlatadi. Eng yaxshi format: avval rol (kim sifatida ish), keyin qoidalar ro'yxati (nima qilsin/qilmasinn), oxirida loyiha haqida kontekst (qanday texnologiyalar, qanday tuzilma).

.cursor/rules papkasi: Katta loyihalar uchun bitta .cursorrules yetmasligi mumkin. .cursor/rules/ papkasida alohida fayllar yaratishingiz mumkin: frontend.md, backend.md, testing.md, styling.md. Cursor barchasini o'qiydi. Bu jamoaviy loyihalarda har bir soha uchun alohida qoidalar berish imkonini beradi.

.cursorignore fayli: .gitignore ga o'xshash — bu faylda ko'rsatilgan papka va fayllarni Cursor indekslamaydi. node_modules, .next, dist, build kabi papkalarni qo'shish kerak. Bu AI javob tezligini oshiradi va keraksiz kontentdan tozalaydi.

Real loyihada .cursorrules namunasi: Professional loyihalarda qoidalarga error handling strategiyasi, naming convention, favqulodda holatlarda nima qilish (masalan: 'agar bilmasang — so'ra, taxmin qilma'), test yozish talabi va commit message formati ham qo'shiladi. Bu AI ni deyarli jamoa a'zosi darajasiga olib chiqadi.

Tayyor prompt shabloni

Ko'chirib moslashtiring
# .cursorrules fayli namunasi

Sen tajribali TypeScript/Next.js dasturchisan.

Qoidalar:
- Har doim TypeScript ishlatsin (JavaScript emas)
- React Server Components default, 'use client' faqat kerak bo'lganda
- Stil uchun CSS Modules (Tailwind emas)
- Funksiya nomlari camelCase, komponent nomlari PascalCase
- Har bir funksiyaga JSDoc izoh qo'sh
- Error handling har doim bo'lsin (try/catch)
- O'zbek tilida izohlar yoz

Nega ishlaydi

Rol: 'tajribali TypeScript/Next.js dasturchi' — AI shu perspektivada ishlaydi

Til: 'TypeScript, JavaScript emas' — aniq cheklov

Arxitektura: 'Server Components default' — loyiha pattern i belgilangan

Stil: 'CSS Modules' — dizayn qarorlari oldindan berilgan

Konvensiya: 'camelCase, PascalCase, JSDoc' — kod standarti

Til: 'O'zbek tilida izohlar' — izoh tili belgilangan

Amaliy mashq

  • Loyiha ildizida .cursorrules fayli yarating
  • Yuqoridagi shablon asosida o'z loyihangiz uchun qoidalar yozing
  • Chat da oddiy komponent so'rang va AI qoidalarga amal qilganini tekshiring
  • Qoidalarni o'zgartiring (masalan 'Tailwind ishlatsin') va farqni ko'ring
  • .cursor/rules papkasini yarating va ichida alohida fayllar qo'shing (backend.md, frontend.md)
  • .cursorignore faylida node_modules va build papkalarini chiqarib tashlang

Ko'p uchraydigan xatolar

  • Juda ko'p qoida yozish — 10-20 ta asosiy qoida yetarli, 100+ qoida AI ni chalkashtirib qo'yadi
  • Qarama-qarshi qoidalar — 'TypeScript ishlatsin' va 'oddiy JavaScript yozsin' birga bo'lmasin
  • .cursorrules ni git ignore qilish — uni loyiha bilan birga saqlang, jamoa uchun foydali
  • Qoidalarni yangilamaslik — loyiha o'sganda qoidalar ham yangilanishi kerak

Dars bo'yicha savol-javob

.cursorrules faylini qayerga qo'yaman?

Loyiha ildiz papkasiga — package.json bilan bir xil darajada. Cursor avtomatik topadi va o'qiydi.

Qoidalar qaysi tilda bo'lishi kerak?

Istalgan tilda — inglizcha, o'zbekcha, ruscha. AI barchasini tushunadi. Lekin inglizcha qoidalar aniqroq ishlaydi chunki modellar ko'proq ingliz matnida o'qitilgan.

Bir loyihada nechta rules fayli bo'lishi mumkin?

.cursor/rules/ papkasida cheksiz fayl bo'lishi mumkin. Lekin umumiy hajm 10,000 so'zdan oshmasin — aks holda AI muhim qoidalarni e'tiborsiz qoldirishi mumkin.

Keyingi qadam

.cursorrules: AI ni loyihangizga moslash | Prompter