Cursor & Vibe Coding — Geliştirici Rehberi
Cursor, VS Code çatalı üzerine inşa edilmiş AI-first bir IDE'dir. Komtaş'ta geliştiriciler için onaylı vibe coding aracıdır.
Cursor Nedir?
🤖 AI-First IDE
Kod yazmak, refactor etmek, hata ayıklamak ve dokümantasyon oluşturmak için gelişmiş LLM entegrasyonu sunar.
💬 Chat & Compose
Kod tabanınızla doğal dil ile sohbet edebilir, tüm projeyi bağlam olarak verebilir, anında değişiklik önerileri alabilirsiniz.
⚡ Cursor Rules
Proje bazlı kurumsal kurallar tanımlanarak AI'ın hep doğru API endpoint'leri, standartları ve kalıpları kullanması sağlanır.
🔧 VS Code Uyumlu
Mevcut VS Code eklentileriniz, temalarınız ve konfigürasyonlarınız Cursor ile doğrudan çalışır.
Neden Cursor? GitHub Copilot ile Farkı
| Özellik | GitHub Copilot | Cursor ✓ |
|---|---|---|
| Proje bağlamı | Sınırlı dosya bağlamı | Tüm repo bağlamı (@codebase) |
| Kurumsal kurallar | Yok | .cursorrules ile tam kontrol |
| Chat arayüzü | Temel | Gelişmiş, dosya & web referansı |
| Model seçeneği | GPT-4o | GPT-4o, Claude, Gemini vb. |
| Agent modu | Yok | Çok adımlı görev yürütme |
| Kurumsal uyum | Standart | Kurallar ile tam özelleştirme |
Kurulum
Cursor'u cursor.sh adresinden indirin. VS Code kullananlar için tek seferlik eklenti ve ayar migrasyonu otomatik gerçekleşir.
# macOS
brew install --cask cursor
# Windows — cursor.sh'dan .exe indir veya winget
winget install Anysphere.Cursor
.cursorrules dosyalarını repo kök dizinine kopyalamanız yeterlidir. Cursor bu dosyaları otomatik olarak okur ve tüm AI önerilerine uygular.
Kurumsal .cursorrules
.cursorrules dosyaları, AI'a proje özelinde talimat vermek için kullanılan yapılandırma dosyalarıdır. Kuruluşumuzda her service group için ayrı bir rule dosyası tutulmaktadır.
Dosya Yapısı
# Proje dizin yapısı
my-agent/
├── .cursorrules # Ana kurallar dosyası
├── .cursor/
│ └── rules/
│ ├── cursorrules-projects.md # Projects service group
│ ├── cursorrules-authentication.md # Auth service group
│ ├── cursorrules-orbis.md # Orbis (RAG) service group
│ ├── cursorrules-meetwith.md # MeetWith service group
│ ├── cursorrules-transcript.md # Transcript service group
│ ├── cursorrules-thy.md # THY service group
│ ├── cursorrules-util.md # Util service group
│ ├── cursorrules-health.md # Health service group
│ ├── cursorrules-mdm.md # Master Data Mgmt
│ ├── cursorrules-cost-mgmt.md # Cost Management
│ ├── cursorrules-leave-mgmt.md # Leave Management
│ ├── cursorrules-leave-balance.md # Leave Balance
│ ├── cursorrules-timesheet.md # Timesheet
│ └── cursorrules-designer.md # UI/UX Standartları
└── src/
└── ...
Prompt Notasyonu — # Değişken Sistemi
Kuruluşumuzda prompt'larda #değişken notasyonu kullanılır. Başında # olan bir değişken, browser cache'deki (localStorage) o değerin adını ifade eder. Bu sayede Cursor, bağlamsal verileri otomatik olarak doğru localStorage çağrılarına çevirir.
| #company_id | → | localStorage.getItem('company_id') |
| #consultant_id | → | localStorage.getItem('consultant_id') |
| #role_names | → | JSON.parse(localStorage.getItem('role_names')) |
| #myprojectlist | → | JSON.parse(localStorage.getItem('myprojectlist')) |
| #customerlist | → | JSON.parse(localStorage.getItem('customerlist')) |
Session Yönetimi — localStorage Standardı
Login sonrası kullanıcı verileri localStorage'da saklanır. Veritabanı kullanılmaz.
| Anahtar | Kaynak | Açıklama |
|---|---|---|
company_id |
Login response → access_list[appid=APP_ID].companyid |
Kullanıcının şirket ID'si |
consultant_id |
Login response → loginid |
Kullanıcının danışman ID'si |
role_names |
GET /api/v1/projects/member-roles |
Rol listesi (array) |
GitHub ile Ajan Geliştirme Süreci
Cursor ve GitHub'ı kullanarak çok adımlı ajan geliştirme süreci:
-
Adım 0 — Repo Klonlama & Ortam Hazırlaması
GitHub'dan proje reposunu klonla. Node.js / Python / Go uygun ortamını kurup dependencies'i yükle.
-
Adım 1 — Feature Branch Oluştur
feature/agent-xyzveyabugfix/issue-123ismiyle yeni branch aç. -
Adım 2 — Cursor ile Kod Geliştir
Cursor IDE'de chat modunda
@codebasekullanarak proje bağlamını ver, AI'dan kod önerileri al. -
Adım 3 — Commit & Push
Değişiklikleri commit et, öz bir commit mesajı yaz, remote branch'e push et.
-
Adım 4 — Pull Request & Code Review
GitHub'da PR aç, main/develop branch'ine yönel. Reviewers atanır, geri bildirim alınır.
-
Adım 5 — Merge & Release
Review geçerse PR merge edilir, main branch'ten release tag'i oluşturulur.
Branch Adlandırma Kuralları
| Tür | Format | Örnek |
|---|---|---|
| Yeni Özellik | feature/agent-name |
feature/user-auth-agent |
| Hata Düzeltme | bugfix/issue-id |
bugfix/issue-456 |
| Hotfix | hotfix/issue-id |
hotfix/production-crash |
| Bakım | chore/task-name |
chore/update-deps |
| Dokümantasyon | docs/doc-name |
docs/api-reference |