Claude Code ve Cursor ile spesifikasyon odaklı geliştirme
Claude Code, bir kod tabanını okuyan, dosyaları düzenleyen ve komutları çalıştıran ajanlı bir kodlama aracıdır. Cursor, proje kuralları .cursor/rules içinde .mdc dosyaları olarak duran düzenleyicidir. Spesifikasyon odaklı geliştirme (SDD, spec-driven development), spesifikasyonu koddan önce yazmak ve spesifikasyonu doğruluk kaynağı saymaktır. Ürün gereksinimleri belgesi (PRD, product requirements document), iş görevlere bölünmeden önce sorunu ve kapsamı anlatan düzyazıdır. SpecScore içinde bir özellik spesifikasyonu, tek bir ürün yeteneğinin dosyasıdır; bir gereksinim (REQ), o özelliğin içindeki adlandırılmış bir kuraldır; bir kabul kriteri (AC, acceptance criterion) ise bu kurallardan birine ya da birkaçına işaret eden isteğe bağlı soyut bir koşuldur. Sürekli entegrasyon (CI, continuous integration), önerilen her değişiklikte otomatik bir denetimdir. Denetim, komut satırı arayüzü (CLI, command-line interface) komutudur: specscore spec lint, specscore/specscore-cli içindeki CLI’dan. Bu sayfadaki Cursor spesifikasyonları, o özellik dosyası ile ajana onu lintlemesini söyleyen Cursor proje kuralıdır.
Son güncelleme: 6 Kasım 2026
Özellik dosyasına ne girer, ajan dosyasına ne girer
Özellik dosyası yükümlülüğü tutar. spec/features/ altındaki bir özellik README’si #### REQ: kurallarını ve ### AC: kriterlerini taşır. Doldurulmuş biçim, plan ve görev, Markdown’da PRD şablonudur. specscore spec lint bu biçimi denetler: başlıklar, zorunlu bölümler, indeks satırları ve referanslar. Ürün fikrinin iyi olup olmadığına karar vermez. Spesifikasyonları CI’da lintlemek bu komutun daha uzun anlatımıdır.
Ajan dosyası tek bir araç için yönergeler tutar. Anthropic genel bakışı, CLAUDE.md dosyasının proje kökündeki bir Markdown dosyası olduğunu ve Claude Code’un onu her oturumun başında okuduğunu söyler. Cursor kurallar belgeleri, bir proje kuralının .cursor/rules içindeki bir .mdc dosyası olduğunu ve bu dizindeki düz bir .md dosyasının frontmatter’ı olmadığı için yok sayıldığını söyler. Bu dosyalar ajana depoda nasıl çalışacağını söyler. Linter’ın denetlediği spesifikasyon değildirler. Yalnızca CLAUDE.md içinde ya da yalnızca .cursor/rules/specscore.mdc içinde var olan bir gereksinim, specscore spec lint için görünmezdir.
specscore agent setup ne yazar
CLI README, specscore agent setup komutunun her ajanın yönerge dosyasını yazdığını ve o ajanın bir beceriler dizini varsa SpecScore beceri paketlerini oraya kopyaladığını söyler. Komut, --force geçilmedikçe var olan bir dosyayı atlar. Sözleşme, specscore/specscore-cli içindeki agent-setup özelliğidir.
Bu sözleşme caller kimliği claude değerini CLAUDE.md ve .claude/skills/ ile, caller kimliği cursor değerini .cursor/rules/specscore.mdc ve .cursor/skills/ ile eşler. Komutu, specscore.yaml dosyası zaten bulunan bir projenin içinde çalıştırın. Bu dosya yoksa komut 6 ile çıkar ve ileti specscore init önerir. Her iki ajanı adlandıran tek bir çağrı specscore agent setup claude,cursor komutudur. Özellik, virgülle ayrılmış bir listenin ayrı argümanlarla aynı olduğunu söyler. Üst dizinler oluşturulur. Her yol eklenen, değiştirilen ya da atlanan olarak bildirilir.
Üretilen CLAUDE.md proje başlığını, --caller claude geçiren CLI örneklerini ve kurulum satırı /plugin install specscore@specscore satırını içerir. Cursor dosyası, YAML frontmatter içeren Markdown’dır. Frontmatter description ve alwaysApply: true içerir. Cursor kurallar tablosu, alwaysApply: true değerinin kuralın her sohbete dahil edilmesi anlamına geldiğini söyler. --no-skills yönerge dosyalarını yazar ve beceri paketlerini kopyalamaz. Aynı sözleşme tablosu ayrıca codex, copilot, antigravity.google, pi.dev, opencode ve deepseek adlandırır. Bu sayfa, başlıktaki iki ajanı izler.
specscore agent setup claude,cursor
CLAUDE.md
.claude/skills/
.cursor/rules/specscore.mdc
.cursor/skills/
Yönerge dosyası özellik ağacını gösterir. Onun yerini almaz. Kurulumdan sonra Claude Code’un spec/features/ ağacını okuması, Cursor kuralının da aynı ağacı göstermesi gerekir. Özellik spesifikasyonu, specscore spec lint komutunun kabul ettiği ya da reddettiği belge olmaya devam eder.
specscore spec lint komutunu döngüde çalıştırın
Önce CLI’ı kurun. Kurulum yöntemleri kurulum sayfasındadır. Ardından özelliği ve linter’ı ajanla aynı döngüde tutun.
Özelliği istemden önce yazın
Özellik README’sini, özellikler indeksi satırını ve specscore.yaml dosyasını PRD şablonu ile ekleyin. Her yükümlülüğü ## Behavior altına #### REQ: {slug} olarak koyun. Kabul kriterlerini bu id’lere **Requirements:** ile yöneltin. CLAUDE.md ve .cursor/rules/ dizinini sonraki adıma bırakın.
Ajan kodu düzenlemeden önce lintleyin
Depoda specscore spec lint çalıştırın. Temiz bir ağaç 0 violations found basar ve 0 ile çıkar. Başarısızlık raporu — dosya, satır, şiddet, kural, ileti — Spesifikasyonları CI’da lintlemek sayfasındadır. Bu komut temiz olana kadar özelliği düzeltin. Linter’ın zaten reddettiği bir özellikten başlayan bir ajan bozuk biçimi kopyalar.
Claude Code ve Cursor’ı ağaca yöneltin
specscore agent setup claude,cursor komutunu çalıştırın. Eklenen CLAUDE.md ve .cursor/rules/specscore.mdc dosyalarını okuyun ve spesifikasyon ağacını ve CLI’ı, --caller dahil, adlandırdıklarını doğrulayın. Dosyalardan biri zaten varsa komut onu atlar. --force geçin, yalnızca o dosyayı değiştirmek istediğinizde.
Bir kriter adlandıran bir görev isteyin
Ajan oturumunda, işin karşılaması gereken özelliği ve kabul kriterini adlandırın. Bir plan görevi bunu **Verifies:** ve bir kabul kriteri id’si ile yapar. Ajandan bitirmeden önce specscore spec lint komutunu yeniden çalıştırmasını ve davranış değişince özellik dosyasını değiştirmesini isteyin. Yönerge dosyası ajana komutu çalıştırmasını söyler. Özellik dosyası, komutun denetlediği şeydir.
Lint, özellik ve görevi sunan beceriler
CLI README’sindeki sarmalayıcı eklentinin kurulum satırları /plugin marketplace add specscore/ai-marketplace ve /plugin install specscore@specscore satırlarıdır. Eklenti deposu specscore/ai-plugin-specscore deposudur, MIT lisansı altındadır. Beceriler README’si, kullanıcıların /specscore:<skill-name> çağırdığını söyler. Gönderilen sarmalayıcılar /specscore:spec sarmalayıcısını içerir; o specscore spec lint komutunu sarar; /specscore:feature sarmalayıcısı specscore feature komutunu sarar (list, info, tree, deps, refs, new ve change-status); /specscore:task sarmalayıcısı specscore task komutunu sarar. /specscore:change-status özellik ve fikir durumu değişikliklerini kapsar. Bu sitedeki CLI Skills sayfası o sarmalayıcıdır. specscore agent setup, --no-skills geçmediğiniz sürece bu beceri paketlerini .claude/skills/ ve .cursor/skills/ içine kopyalar.
Eklenti README’si, Cursor’ın remote-install komutu olmadığını ve becerileri projedeki .cursor/skills/ dizininden ya da ~/.cursor/skills/ dizininden yüklediğini söyler. Gösterdiği elle kopyalama, ai-plugin-specscore deposunun git clone işlemi ve skills/* için .cursor/skills/ içine cp -R işlemidir. specscore agent setup cursor, özellik spesifikasyonunun adlandırdığı pazar yerinden bu kopyalamayı sizin için yapan komuttur.
SpecStudio Skills yönlendirmeli iş akışıdır. Depo specscore/specstudio-skills deposudur, MIT lisansı altındadır. README’sindeki Claude Code kurulum satırı /plugin install specstudio@specscore satırıdır ve Claude Code’un specscore eklentisini bir bağımlılık olarak kurduğunu söyler. Durum bölümü 0.0.7 sürümünü adlandırır ve ideate, specify, plan, implement, verify ve recap becerilerinin dogfood için yeterince etkin olduğunu söyler. Aynı README’nin envanter tablosu specstudio:ideate ve specstudio:specify becerilerini ayrıntılı belgeler. Bu beceriler SpecScore artefaktları yazar. specscore spec lint komutunun yerini almazlar.
Aynı komut CI’da
specscore/specscore içindeki dogfood.yml, SPECSCORE_VERSION değerini v0.39.1 yapar ve specscore spec lint komutunu pull request’lerde ve main’e yapılan push’larda çalıştırır. İş akışı alıntısı ve metin raporu Spesifikasyonları CI’da lintlemek sayfasındadır. Bir başlığı bozan bir özellik, dosyayı Claude Code yazmış olsa da Cursor yazmış olsa da o job’u düşürür. Ajan döngüsü ve CI aynı komutu çağırır.
Biçim lisansı, specscore/specscore içindeki CC BY 4.0 lisansıdır. CLI lisansı, specscore/specscore-cli içindeki Apache-2.0 lisansıdır.
Başka spesifikasyon odaklı araçlar farklı denetimler yayımlar. Aşağıdaki cümleler yalnızca o projelerin kendi sayfalarının söylediğini kullanır. Araç rehberi aynı sayfaları 30 Ekim 2026’da okunmuş olarak kaydeder, 28 Eylül 2026 basan Spec Kit belge ana sayfası dışında.
OpenSpec, openspec validate komutunu CLI başvurusu içinde belgeler. Bu komut OpenSpec’in değişiklik ve spesifikasyon yapısını denetler. Bir SpecScore ### AC: başlığını denetlemez.
Task Master README’si, bir PRD’yi task-master parse-prd ile görevlere ayrıştırmayı anlatır. O PRD için bir linter anlatmaz.
GitHub Spec Kit, aşamaları Markdown artefaktları yazan bir ajan iş akışını anlatır. O belge ana sayfası, bir SpecScore özellik README’sini CI’da lintleyen bir komut anlatmaz.
Sık sorulan sorular
Claude Code ile spesifikasyon odaklı geliştirme nedir?
Claude Code kodu yazmadan önce SpecScore özelliğini yazmak, sonra CLAUDE.md dosyasını o özelliği gösteren yönerge dosyası olarak tutmaktır. Özellik, gereksinimleri (REQ) ve kabul kriterlerini (AC) tutar. specscore spec lint özelliği denetler. specscore agent setup claude, specscore.yaml dosyası zaten bulunan bir projede CLAUDE.md yazar.
Cursor spesifikasyonları nereye gider?
Ürün yükümlülüğü, spec/features/ altındaki özellik README’sine gider. Cursor proje kuralı .cursor/rules/specscore.mdc dosyasına gider. Beceri dosyaları .cursor/skills/ dizinine gider. specscore agent setup cursor kuralı yazar ve --no-skills geçmediğiniz sürece beceri paketlerini kopyalar. .mdc kurallarının nasıl uygulandığına kaynak, Cursor’ın kendi belgeleridir.
CLAUDE.md özellik spesifikasyonunun yerini alır mı?
Hayır. CLAUDE.md, Claude Code’un yönerge olarak okuduğu dosyadır. Özellik README’si, specscore spec lint komutunun denetlediği dosyadır. agent-setup özelliği, üretilen dosyanın ajana spesifikasyon ağacını ve CLI komutlarını öğrettiğini söyler. Yönerge dosyasının spesifikasyon olduğunu söylemez.
CLAUDE.md ya da Cursor kuralı zaten varsa ne olur?
Komut var olan dosyayı atlar ve --force belirten bir atlama satırı basar. Var olan baytlar durur. --force geçin, yalnızca değiştirmek istediğinizde. Aynı atlama kuralı, zaten mevcut bir beceri dosyası için de geçerlidir.
Linter’ı hangi beceri çalıştırır?
Eklentinin beceriler README’sinde /specscore:spec, specscore spec lint komutunu sarar. Bu CLI komutunu kendiniz de çalıştırabilirsiniz, ajan oturumunda ya da CI’da. /specscore:feature ve /specscore:task özellik ve görev komutlarını sarar. Kendi başlarına lintlemezler.
Linter düzyazıyı notlar mı?
Hayır. specscore spec lint yapıyı denetler. Spesifikasyonları CI’da lintlemek raporu gösterir. Temiz bir yapısal denetim, bir ürün incelemesi değildir.
Kaynaklar
agent-setup davranışı, 6 Kasım 2026’da okunan, main üzerindeki specscore-cli spec/features/cli/agent/setup/README.md içindeki sözleşmedir. Beceri adları, aynı gün okunan, main üzerindeki ai-plugin-specscore skills/README.md dosyasındandır. SpecStudio kurulum satırı ve 0.0.7 sürüm durum listesi, aynı gün okunan, main üzerindeki specstudio-skills README.md dosyasındandır. Claude Code açıklaması ve CLAUDE.md cümlesi code.claude.com/docs/en/overview adresindendir. Cursor proje kuralı yolları cursor.com/docs/rules adresindendir. Bu depodaki dogfood.yml, SPECSCORE_VERSION değerini v0.39.1’e sabitler. Rakip sayfalar aşağıda bağlananlardır; araç rehberi onları 30 Ekim 2026’da okunmuş olarak kaydeder, 28 Eylül 2026 basan Spec Kit belge ana sayfası dışında.
- Claude Code — genel bakış (CLAUDE.md)
- Cursor — Rules (proje kuralları .mdc dosyalarıdır)
- specscore-cli — agent-setup özelliği
- specscore-cli — README (agent setup ve eklenti kurulumu)
- specscore/specscore-cli
- specscore-cli — Apache-2.0 lisansı
- specscore/specscore
- specscore/specscore — CC BY 4.0 lisansı
- specscore/specscore — dogfood.yml (CLI v0.39.1)
- specscore/ai-plugin-specscore
- ai-plugin-specscore — MIT lisansı
- ai-plugin-specscore — beceriler README’si
- ai-plugin-specscore — README (Cursor kopyası)
- specscore/specstudio-skills
- specstudio-skills — MIT lisansı
- specstudio-skills — README (sürüm 0.0.7)
- CLI Skills
- SpecStudio Skills
- Yapay zeka ile kodlama için Markdown’da PRD şablonu
- Spesifikasyonları CI’da bir spesifikasyon linter’ı ile lintlemek
- Özellik spesifikasyonu
- Kabul kriterleri spesifikasyonu
- OpenSpec CLI başvurusu — openspec validate
- Fission-AI/OpenSpec
- eyaltoledano/claude-task-master
- GitHub Spec Kit belgeleri (sayfa tarihi 28 Eylül 2026)
- Spesifikasyon odaklı geliştirme araçları
İlgili
- Yapay zeka ile kodlama için Markdown’da PRD şablonu
- Spesifikasyonları CI’da bir spesifikasyon linter’ı ile lintlemek
- Bir yapay zeka ajanının doğrulayabileceği kabul kriterleri nasıl yazılır
- EARS gereksinim sözdizimi örneklerle açıklandı
- Spesifikasyon odaklı geliştirme
- Spesifikasyon odaklı geliştirme araçları
- CLI Skills
- SpecStudio Skills
- CLI
- Özellik spesifikasyonu