AI Genel Çalışma Rehberi

Blog / Rehber

Spec-Kit: AI Destekli Kodlamayı Profesyonelleştiren Toolkit

Spec-Kit Logo

Hani bazen saatlerce Claude'a veya Copilot'a bir şey tarif edersiniz, yazdığı kodu alırsınız, çalıştırırsınız, hata alırsınız, düzeltirsiniz, tekrar hata, tekrar düzeltme... Bu döngüyü biliyorsanız "vibe coding" yapıyorsunuz demektir.

GitHub'ın açık kaynak projesi Spec-Kit, işte bu kaosu ortadan kaldırmak için tasarlandı. Peki nasıl?

Hızlı Bakış

Ne: GitHub'ın geliştirdiği açık kaynak bir toolkit - AI coding assistant'larla yapılandırılmış çalışmayı sağlıyor

Neden: Vibe coding yerine, önce "ne istediğinizi" tam olarak tanımlayıp, sonra AI'ın "nasıl yapacağını" üretmesini sağlıyor

Nasıl: Slash komutlarıyla (örneğin /speckit.specify) adım adım ilerliyor

Kimler için: Claude Code, GitHub Copilot, Cursor, Windsurf ve daha birçok AI assistant kullanıcıları

GitHub Stars: 59K+ (Ocak 2026)


Bir Senaryo ile Başlayalım

Diyelim ki yeni mezunsunuz ve ilk işinizde bir task management uygulaması geliştirmeniz istendi. Elinizde Claude Code var. Ne yapardınız?

Muhtemelen şöyle bir şey: "Claude, bana React ile bir task management uygulaması yaz. Kanban board olsun, drag-drop olsun, database bağlantısı olsun..."

Sonuç? Büyük ihtimalle çalışan ama:

bir kod yığını.

Spec-Kit ile yapılacak olan:

  1. Önce projenin "anayasasını" belirliyorsunuz - hangi prensiplere uyacak?
  2. Sonra ne istediğinizi detaylı tanımlıyorsunuz - user story'ler, senaryolar
  3. AI size teknik plan sunuyor - review ediyorsunuz
  4. Görevlere bölünüyor
  5. En son kod yazılıyor

Fark? İlkinde "vibe" var, ikincisinde "specification" var.


Specification-Driven Development Nedir?

Klasik yazılım geliştirmede genellikle hemen kodlamaya başlarız. Specification (spesifikasyon) yazarız belki ama "asıl iş" kod yazmak diye düşünürüz.

Spec-Driven Development (SDD) bunu tersine çeviriyor: Spesifikasyonlar sadece doküman değil, direkt olarak çalışan koda dönüşüyor.

Düşünün ki bir ev inşa ediyorsunuz:


Spec-Kit Nasıl Çalışıyor?

Adım 1: Kurulum

Spec-Kit'i kullanmak için uv paket yöneticisine ihtiyacınız var:

# Kurulum
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git
 
# Yeni proje başlatma (Claude ile)
specify init my-project --ai claude
 
# Mevcut projede başlatma (Copilot ile)
specify init . --ai copilot

Adım 2: Constitution - Projenin Anayasası

Her projede bazı değişmez kurallar olmalı. Örneğin "her fonksiyonun testi olacak" veya "state management için Redux kullanılacak" gibi.

/speckit.constitution
 
Bu proje şu kurallara uyacak:
- Her feature önce unit test ile başlayacak (TDD)
- Tüm API endpoint'leri TypeScript ile tip güvenli olacak
- Component'ler maximum 100 satır olacak
- Her PR'da code review zorunlu

Bu komut .specify/memory/constitution.md dosyasını oluşturur. AI bundan sonraki tüm işlerinde bu kurallara uyar.

Adım 3: Specify - Ne İstediğinizi Tanımlayın

Şimdi ne inşa etmek istediğinizi detaylıca anlatın:

/speckit.specify
 
Taskify adında bir ekip verimlilik platformu geliştir.
Özellikler:
- Kullanıcılar proje oluşturabilecek
- Projelere takım üyesi ekleyebilecek
- Görevler atayabilecek ve yorum yapabilecek
- Görevler Kanban stilinde sürükle-bırak ile taşınabilecek
- Kolonlar: Yapılacak, Devam Ediyor, İncelemede, Tamamlandı
 
Demo için 5 önceden tanımlı kullanıcı olsun:
1 ürün müdürü, 4 mühendis
3 örnek proje, her biri standart kolonlarla

Bu komut şunları otomatik yapar:

Adım 4: Plan - Teknik Planı Alın

Artık AI size nasıl implement edeceğini soruyor:

/speckit.plan
 
Uygulama Vite ile yapılacak. 
Mümkün olduğunca vanilla HTML, CSS ve JavaScript kullan.
Veriler localStorage'da tutulsun, ileri aşamada SQLite eklenebilir.

Bu komut plan.md dosyası üretir - hangi dosyaların oluşturulacağı, mimari kararlar, bağımlılıklar...

Adım 5: Tasks - Görev Listesi

/speckit.tasks

Bu komut planı somut görevlere böler. Paralel yapılabilecek görevler [P] ile işaretlenir:

# Görev Listesi
 
## Setup [P]
- Vite projesini oluştur
- ESLint ve Prettier konfigürasyonu
 
## Database [P]  
- LocalStorage wrapper'ı yaz
- Veri modelleri tanımla
 
## UI Components
- Kanban board component'i (Setup sonrası)
- Task card component'i
- Drag-drop işlevselliği

Adım 6: Implement - Kodu Üretin

/speckit.implement

Ve işte sihir burada gerçekleşiyor. AI tüm görevleri sırayla (veya paralel) çalıştırarak feature'ı inşa ediyor.


İsteğe Bağlı Komutlar

Temel akışın yanında kalite artıran ek komutlar da var:

/speckit.clarify - Belirsiz noktalar var mı?

AI size sorular sorar: "Kullanıcı rollerini nasıl tanımladınız?", "Drag-drop mobilde de çalışacak mı?" gibi. Planlamadan önce kullanılması önerilir.

/speckit.analyze - Tutarlılık kontrolü

Spec, plan ve görevler arasında tutarsızlık var mı kontrol eder. "Spec'te bahsedilen X özelliği plan'da yok" gibi uyarılar verir.


Klasör Yapısı

Spec-Kit kullanan bir proje şöyle görünür:

my-project/
├── .specify/
│   ├── memory/
│   │   └── constitution.md    # Proje anayasası
│   ├── templates/
│   │   ├── spec-template.md   # Spec şablonu
│   │   ├── plan-template.md   # Plan şablonu
│   │   └── tasks-template.md  # Görev şablonu
│   └── specs/
│       └── 001-taskify/
│           ├── spec.md        # Ne yapılacak
│           ├── plan.md        # Nasıl yapılacak
│           └── tasks.md       # Hangi adımlarla
└── src/                       # Kod buraya yazılıyor

Desteklenen AI Assistant'lar

Spec-Kit şu araçlarla çalışıyor:

Tam Destek:

Kısmi Destek:


Gerçek Dünya Faydaları

Zaman Tasarrufu

Geleneksel bir feature için dokümantasyon süresi:

Spec-Kit ile:

Kalite Artışı

Onboarding Kolaylığı

Yeni bir takım üyesi geldiğinde:


Spec-Kit vs Vibe Coding - Karşılaştırma

Vibe Coding Yaklaşımı:

Spec-Kit Yaklaşımı:

Hangisi ne zaman?

Vibe coding uygun olabilir:

Spec-Kit daha iyi:


MCP ile İlişkisi

Bu eğitim serisi MCP (Model Context Protocol) hakkında. Peki Spec-Kit MCP ile nasıl bir ilişkide?

MCP: AI'ın "elleri" - Dış dünya ile etkileşim (veritabanı, API, dosya sistemi)

Spec-Kit: AI'ın "beyni" - Ne yapılacağını planlama ve organize etme

İkisi birbirini tamamlıyor. MCP ile AI'a araçlar veriyorsunuz, Spec-Kit ile bu araçları nasıl kullanacağını planlıyorsunuz.


Başlangıç İçin Tavsiyeler

  1. Küçük başlayın - İlk projenizi basit tutun, Spec-Kit'in akışını öğrenin

  2. Constitution'ı ciddiye alın - İyi tanımlanmış prensipler, tutarlı kod demek

  3. Review yapın - AI'ın ürettiği spec ve planları mutlaka gözden geçirin

  4. İteratif düşünün - Bir seferde her şeyi yapma, feature by feature ilerle


Sonuç

Spec-Kit, AI destekli yazılım geliştirmede "vibe"dan "specification"a geçişi temsil ediyor. Evet, biraz daha ön hazırlık gerektiriyor ama karşılığında:

alıyorsunuz.

Bir dahaki sefere Claude'a "bana şunu yaz" demeden önce düşünün: "Acaba önce ne istediğimi tam olarak tanımlasam mı?"


Kaynaklar ve İleri Okuma

GitHub Reposu:

Video İçerikler:

Dokümantasyon:

İlgili Kavramlar:


Son güncelleme: Ocak 2026