Claude Code (Başlangıç → İleri Düzey) - 2/3
Normal insanlar için Claude Code Tam Kurulum Klavuzu
Bu bültendeki her şey test edilmiştir. Her iş akışını uyguladım, her hatayla karşılaştım ve neyin işe yaradığını biliyorum.
Seri boyunca toplam 11 komut var; bugün bunların 4’ünü kuruyoruz. Her biri bir öncekini temel alır. Her komutu Claude Code’a yapıştır ve sohbeti takip et. Sonunda yapay zekân kim olduğunu bilir, araçlarını kullanır, iş akışlarını yürütür ve sen uyurken çalışır.
Üç günlük serimizin 2. bölümüdür. İlk bölüm
Claude Code (Başlangıç → İleri Düzey) - 1/3
Bu bültendeki her şey test edilmiştir. Her iş akışını uyguladım, her hatayla karşılaştım ve neyin işe yaradığını biliyorum.
AŞAMA 2 · ZEKA
Dün Claude’a kim olduğunu anlattık. Bugün ne yapacağını öğretiyoruz.
Fark şu: dünkü üç dosya Claude’un bildiği şeylerdi. Bugünkü dört şey Claude’un yaptığı şeyler. Tekrar tekrar anlattığın işleri tek komuta indireceğiz, kuralları sadece gerektiği anda yükleteceğiz, tehlikeli şeylere kilit takacağız ve bütün bunları tek bir ayar dosyasından yöneteceğiz.
Bir şeyi baştan söyleyeyim: bu bölümdeki ilk üç madde birbirinin alternatifi değil, kardeşi. Hangisini ne zaman kullanacağın tek bir soruyla belli oluyor. Her oturumda geçerli bir gerçek mi? CLAUDE.md’ye yaz. Sadece belirli dosyalarla çalışırken mi geçerli? Kural yap. Adım adım bir prosedür mü? Beceri yap. Bu üçünü karıştırmak, insanların Claude Code’da en çok kaybettiği yer.
4. Becerilerini kur: aynı işi bir daha anlatmamak
Beceri (skill), Claude’a bir kere yazdığın tarif. .claude/skills/ klasörüne bir Markdown dosyası koyuyorsun — Markdown, not defteriyle açılabilen sade bir metin dosyası, Word belgesi gibi bir şey değil — adını /haftalik-ozet gibi eğik çizgiyle çağırıyorsun, o da tarifi harfiyen uyguluyor.
Bunu şöyle düşün: CLAUDE.md Claude’un kimlik kartı, beceri ise mutfak dolabındaki tarif defteri. Kimlik kartı her sabah okunur; tarif defteri sadece o yemeği yaparken açılır. Bu ayrım önemli, çünkü CLAUDE.md’ye yazdığın her satır her oturumda yer kaplar, becerinin içeriği ise sen çağırmadan hiç yüklenmez. Yani beceriler bedava depo alanı gibi.
Ne zaman beceri yazacağını nasıl bilirsin? Aynı talimatı sohbete ikinci kez yapıştırdığın anda. Ya da CLAUDE.md’nin bir bölümü “şu bir gerçek” olmaktan çıkıp “şu adımları izle”ye dönüştüğünde.
Yazmaya başlamadan önce şunu bil: Claude Code bir sürü beceriyle birlikte geliyor. /doctor kurulumunu kontrol eder, /code-review kodunu inceler, /debug hata avlar, /batch aynı işi birçok dosyada tekrarlar, /loop bir işi olana kadar döngüye alır, /verify yaptığı değişikliğin gerçekten çalıştığını uygulamayı ayağa kaldırıp doğrular. Kendi becerini yazmadan önce / yazıp listeye bir bak; aradığın şey zaten orada olabilir.
Bir de küçük bir tarih notu: eskiden “özel komut” diye ayrı bir şey vardı, .claude/commands/ klasörüne dosya koyuyordun. O ikisi birleşti. Eski dosyaların çalışmaya devam ediyor, ama artık beceri yazmak daha mantıklı, çünkü becerinin kendi klasörü var: yanına şablon, örnek çıktı, hatta çalıştırabileceği bir betik koyabiliyorsun.
Beceri dosyasının anatomisi çok basit. En üstte üç tire arasında birkaç satır ayar, altında normal Türkçe talimatlar. Ayarların hepsi isteğe bağlı; sadece description gerçekten önemli, çünkü Claude bu cümleye bakarak “bu beceriyi şimdi kullanmalı mıyım?” kararını veriyor. Klasörün adı otomatik olarak komutun adı oluyor.
İşine yarayacak üç ayar var. disable-model-invocation: true yazarsan beceriyi sadece sen çağırabilirsin, Claude kendi kafasına göre çalıştırmaz; dağıtım, fatura, e-posta gönderme gibi işlerde bunu mutlaka koy. context: fork yazarsan beceri kendi ayrı kafasında çalışır, ana sohbetini kirletmez. allowed-tools ile de o beceri çalışırken hangi araçlar için izin sorulmayacağını söylersin.
En sevdiğim numara ise şu: beceri dosyasının içine ünlem işaretiyle bir komut yazarsan, Claude dosyayı okumadan önce o komut çalışır ve çıktısı dosyanın içine yapıştırılır. Yani beceri, Claude’a canlı veriyle ulaşır. Bu numarayla kurulmuş bir beceri, her çağrıldığında o anki gerçek verini görür; tahmin etmez.
Şu promptu yapıştır:
CLAUDE.md dosyamı, klasör yapımı ve hafıza dosyalarımı oku.
Kendime bir beceri kütüphanesi kurmak istiyorum: eğik çizgiyle
çağırdığım, tekrar tekrar kullandığım iş akışları.
Beceriler .claude/skills/[ad]/SKILL.md dosyalarıdır. Klasörün adı
komutun adı olur. Dosyanın başında üç tire arasında ayarlar,
altında talimatlar bulunur.
Önce bana işime en çok yarayacak 5 beceriyi öner. Her biri için:
- Adı ve tam olarak nasıl çağıracağım (/ad)
- Tek cümleyle ne yaptığı
- Benden ne istediği (varsa)
- Ne ürettiği
- Bana neden zaman kazandırdığı
Bunları şuna göre sırala: kazandırdığı süre × kullanma sıklığım.
ÖNEMLİ: Önermeden önce Claude Code’un hazır becerilerine bak
(/code-review, /debug, /batch, /loop, /verify, /run gibi). Zaten
var olan bir şeyi yeniden yazmayalım. Önerimin hazır bir beceriyle
örtüştüğü yerde bana bunu söyle.
Sonra 1 numaralı beceriyi gerçekten oluştur ve
.claude/skills/[ad]/SKILL.md olarak kaydet. Şunları içersin:
- Net bir description satırı (Claude bu beceriyi ne zaman
kullanacağını buradan anlıyor)
- Sadece ben çağırayım istiyorsan disable-model-invocation: true
- Adım adım, kısa talimatlar (beceri yüklendikten sonra sohbette
kalıyor, o yüzden gereksiz açıklama yazma)
- İşler ters gittiğinde ne yapacağı
- Canlı veriye ihtiyaç duyuyorsa ünlem işaretiyle komut çalıştırma
Bittiğinde benim gerçek işimden bir örnekle nasıl çalıştıracağımı
göster. Sonra sor: “2 numarayı da kuralım mı, yoksa önce bunu
deneyelim mi?”Başlangıç için iyi fikirler: /haftalik-ozet, /toplanti-notu, /musteri-guncelleme, /arastirma-brifingi, /icerik-taslagi.
Beceriler başka becerileri de çağırabilir. Gerçek kütüphaneni böyle kuruyorsun: küçük beceriler, birbirini çağıran zincirler.
İki pratik not. Birincisi, beceri dosyasını kaydettiğin an aktif oluyor; Claude Code’u kapatıp açmana gerek yok. İkincisi, ev dizinindeki ~/.claude/skills/ becerileri her projede yanında, proje klasöründeki .claude/skills/ ise git’e girer ve ekibine gider. Ama dikkat: Cowork ve buluttan çalışan oturumlar senin bilgisayarındaki kişisel becerileri görmez. Onların da erişmesini istiyorsan beceriyi projeye koy.
Kurduğun becerinin çalıştığını görmenin en hızlı yolu: Claude Code’da “/” yazıp açılan listeye bakmak. Beceri adın orada görünüyorsa hazırdır. Bir de şunu bil: .claude gibi noktayla başlayan klasörler Finder’da görünmez. Claude “dosyayı oluşturdum” dediği hâlde hiçbir şey göremiyorsan panik yapma; Finder’da Cmd+Shift+. tuşlarına basınca gizli klasörler ortaya çıkıyor.
5. Kurallarını yaz: doğru anda devreye giren talimatlar
CLAUDE.md’nin bir sorunu var: her şey her zaman yüklü. Müşteri dosyalarıyla ilgili kuralın, sen bir blog yazısı yazarken de orada duruyor ve yer kaplıyor.
Kurallar bunu çözüyor. .claude/rules/ klasörüne konu konu dosyalar koyuyorsun (musteriler.md, teklifler.md, yazim-stili.md) ve her dosyanın başına “bu kural sadece şu dosyalarda geçerli” diye bir satır yazıyorsun. Claude o dosyalardan birini açtığı anda kural devreye giriyor, açmadığında hiç yüklenmiyor.
Bu, hassasiyet katmanı. Her şeyi kapsamaya çalışan tek bir dev CLAUDE.md yerine, tam gerektiği anda ortaya çıkan hedefli kurallara sahip oluyorsun.
Sihirli kelime paths. Dosyanın en başına, üç tire arasına yazıyorsun:
---
paths:
- musteriler/**/*.md
---
# Müşteri dosyaları kuralları
- Fiyat bilgisini dışa dönük hiçbir metne koyma
- Müşteri adını kısaltma, tam yaz
- Her dosyanın başına tarih ve sorumlu adı ekleBu kalıplara glob deniyor; birçok dosyayı tek satırda tarif etmenin kısa yolu. İki yıldız “kaç klasör derinde olursa olsun” demek, yıldız-nokta-md de “uzantısı md olan her dosya” demek. Birden fazla uzantıyı birlikte yazmak istersen süslü parantez kullanıyorsun: *.{md,txt} gibi. paths satırını hiç yazmazsan kural her zaman yüklenir, yani .claude/CLAUDE.md’ye yazmışsın gibi olur. Bu da bazen tam istediğin şeydir.
Ev dizinindeki ~/.claude/rules/ klasörü senin kişisel kurallarındır, açtığın her projede geçerlidir, ekibin görmez. Kişisel tercihlerin için orayı kullan. Aynı kural setini birkaç projede paylaşmak istersen sembolik bağ kurabilirsin — aynı klasöre iki yerden bakan bir kısayol: ln -s ~/ortak-kurallar .claude/rules/ortak
Burada dürüst olmam gereken bir şey var. Ne CLAUDE.md ne de kurallar bir güvenlik duvarı. İkisi de Claude’a bağlam olarak gidiyor; yani “şunu yapma” yazdığında Claude bunu güçlü bir tavsiye olarak okuyor, mutlak bir yasak olarak değil. Bir şeyin gerçekten olmasını istemiyorsan izin kurallarına ya da kancaya ihtiyacın var. İkisi de sıradaki maddelerde.
Şu promptu yapıştır:
CLAUDE.md dosyamı oku; ne tür işler yaptığımı ve hangi
dosyalarla çalıştığımı anla.
.claude/rules/ klasörüne kural dosyaları kur. Bunlar sadece
eşleşen dosyalarla çalışırken yüklenen talimat dosyaları.
Nasıl çalıştıklarını doğru kur:
- Her kural dosyasının başında üç tire arasında bir paths alanı
olur, içinde glob kalıpları listelenir
- Claude eşleşen bir dosyayı okuduğunda kural otomatik yüklenir
- paths alanı olmayan kurallar her zaman yüklenir
Bana özel 4 kural dosyası oluştur. Ben yazılımcı değilim; kod
dosyalarına göre değil, gerçekten kullandığım klasörlere göre
kur. Klasörlerimi bilmiyorsan önce bana sor.
1. Yazdığım metinler için (*.md, *.txt)
İçinde: yazım tarzım, başlık düzeni, uzunluk tercihim,
kaçınmasını istediğim ifadeler
2. Müşteri ve teklif dosyaları için (musteriler/, teklifler/)
İçinde: isimleri nasıl yazdığım, fiyat bilgisini nasıl ele
aldığı, dışa dönük metinde neyi asla yazmayacağı
3. Tablo ve veri dosyaları için (*.csv, *.xlsx)
İçinde: sütun isimlendirmem, tarih biçimim, boş hücreyi nasıl
doldurduğu, hangi durumda bana sorması gerektiği
4. Ayar ve gizli bilgi dosyaları için (*.json, *.yaml, .env)
İçinde: gizli bilgileri nasıl sakladığım, hangi durumda bana
sormadan hiçbir şeyi değiştirmemesi gerektiği
Kod da yazıyorsam bunlara ek olarak çalıştığım dilin dosyaları
için (*.ts, *.py gibi) bir kural dosyası daha kur.
Her dosyada 5-8 tane somut talimat olsun. “İyi yaz” gibi
belirsiz şeyler yazma; doğrulanabilir şeyler yaz (“başlıkları
6 kelimeden kısa tut” gibi).
Hepsi bittiğinde:
- paths sözdizimini bana göster, kendim yenisini ekleyebileyim
- CLAUDE.md’mde duran ama aslında kural olması gereken şeyler
varsa bunları söyle ve taşımayı öner
- Hangi kuralın hangi dosyada devreye gireceğini tek tabloda göster
- Kuralların yüklendiğini nasıl kontrol edeceğimi söyleKural gerçekten devreye giriyor mu? Testi basit: kuralın kapsadığı dosyalardan birini Claude’a açtır, sonra “şu an hangi kurallar yüklü?” diye sor. Kuralın adını sayması gerekiyor. Saymıyorsa paths satırındaki kalıp o dosyayla eşleşmemiş demektir; Claude’a kalıbı düzeltmesini söyle.
6. Kancalarını kur: güvenlik ağın
Kanca (hook), belirli anlarda otomatik çalışan küçük bir program. Bir dosya düzenlenmeden önce, bir komut çalıştıktan sonra, Claude işini bitirdiğinde. Bir kere kurarsın, her oturumda sessizce arka planda döner.
Buradaki en önemli fark şu: kanca bir tavsiye değil, gerçek bir kilit. CLAUDE.md’ye “asla git commit yapma” yazarsan Claude genellikle uyar. Kanca kurarsan yapamaz. Nokta.
Kancaların çalışabildiği anlar bir hayli çok: oturum açılırken, sen prompt gönderdiğinde, bir araç çalışmadan önce, çalıştıktan sonra, çalışmayı başaramadığında, Claude cevabını bitirdiğinde, sohbet uzayınca Claude eski kısımları özetlediğinde, yardımcı bir alt asistan başlattığında, hatta izlediğin bir dosya bilgisayarında değiştiğinde. Sen bunların üçünü kullanacaksın, gerisi dursun.
Yapı şöyle: bir olay seçiyorsun (araç çalışmadan önce gibi), bir filtre koyuyorsun (sadece komut çalıştırmalarında tetiklen gibi), sonra çalışacak betiği söylüyorsun. Betik, bilgisayarına kaydedilmiş küçük bir komut dosyası; onu Claude senin için yazacak. Ayar dosyasında şuna benziyor:
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{ "type": "command",
"command": "~/.claude/hooks/guvenlik.sh" }
]
}
]
}Türkçesi: “Bir terminal komutu çalışmadan önce guvenlik.sh betiğini çalıştır.” Claude Code betiğe olayla ilgili bilgiyi JSON olarak gönderiyor, betik de kararını JSON olarak geri basıyor. JSON, programların birbirine veri gönderirken kullandığı süslü parantezli metin biçimi; yukarıdaki kutu da JSON. Bu alışverişi kolaylaştırmak için jq denen küçük bir yardımcı araca ihtiyacın olacak, ayrıca betiğe chmod +x komutuyla “çalışabilirsin” izni verilmesi gerekiyor. İkisini de Claude senin için yapar, ama adlarını ekranda görünce ne olduğunu bilmen iyi.
Kritik bir davranış: betik hiçbir şey basmadan çıkarsa “kararım yok” demiş olur ve normal izin akışı devam eder. Sessizlik onay değil; engellemek istiyorsan açıkça engellemen gerekiyor.
Ve şimdi kötü haber, ya da iyi haber. İnternette dolaşan kanca listelerinin yarısı artık gereksiz, çünkü Claude Code bu işleri kendi kendine yapıyor.
Dosya yedeklemeye kanca yazma. Claude Code her düzenlemeden önce dosyanın fotoğrafını zaten çekiyor ve /rewind yazınca geri alıyorsun. Bu varsayılan olarak açık. Kanca yazmanın tek anlamlı sebebi, yedeği oturumun dışına, kendi arşivine kopyalamak istemen.
Kancalar çok değerli, ama üç şey için:
Akıl gerektiren engellemeler. Basit bir yasak listesinin çözemediği durumlar.
Kayıt tutmak. Claude’un dokunduğu her dosyanın zaman damgalı bir günlüğü. Bir şey ters gittiğinde neyin ne zaman değiştiğini görmek paha biçilmez.
Hassas dosyalarda uyarı. Engellemek değil, sadece “dikkat, .env dosyasına dokunuyorsun” demek.
Şu promptu yapıştır:
Claude Code kurulumum için kancalar kurmanı istiyorum. Ama önce
bir şey yap: bana hangi kancaların gerçekten gerekli olduğunu,
hangilerinin Claude Code’un artık kendi başına yaptığı şeyler
olduğunu söyle. Zaten var olan bir şeyi yeniden kurmak istemiyorum.
Bunlara özellikle bak:
- Dosya checkpoint’leri ve /rewind zaten yedekleme yapıyor mu?
Yapıyorsa yedekleme kancası kurma.
- preferredNotifChannel ayarı ses/bildirim işini çözüyor mu?
Çözüyorsa bildirim kancası yerine ayarı kullan.
- Engellemek istediğim komutlar permissions.deny ile çözülüyor mu?
Çözülüyorsa kanca yazma, deny listesine ekle.
Sonra sadece gerçekten kanca gerektiren şeyleri kur. Betikleri
~/.claude/hooks/ altına koy, chmod +x ile çalıştırılabilir yap ve
~/.claude/settings.json içindeki hooks bölümüne kaydet.
Kanca 1 — güvenlik (PreToolUse, matcher: Bash)
Basit bir yasak listesinin yakalayamayacağı tehlikeli komutları
engelle. En azından:
- git commit (commit’leri ben elle yapıyorum)
- git push --force ve git push -f
- git reset --hard
- git branch -D
- rm -rf ile kök dizin veya ev dizini
- DROP TABLE, DROP DATABASE
Betik JSON girdisini stdin’den okusun, jq ile komutu çıkarsın ve
engellerken hookSpecificOutput içinde permissionDecision "deny"
ve anlaşılır bir permissionDecisionReason bassın. Engellemediği
durumda çıktısız exit 0 yapsın.
Kanca 2 — kayıt (PostToolUse, matcher: Write|Edit)
Her değişikliği ~/.claude/changes-YYYY-MM-DD.log dosyasına yaz.
Format: [SS:DD:ss] [WRITE|EDIT] [dosya yolu]
Kanca 3 — hassas dosya uyarısı (PreToolUse, matcher: Write|Edit)
Şunlar düzenlenirken uyar ama ENGELLEME:
- her türlü .env dosyası
- adında secret, credentials, password, token geçen dosyalar
- CLAUDE.md ve settings.json
Hepsi bittiğinde:
1. settings.json’ın son hâlindeki hooks bölümünü bana göster
2. matcher ve if alanlarının ne yaptığını tek paragrafta açıkla
3. Her kancayı nasıl test edeceğimi söyle
4. Bir kanca yüzünden işim tıkanırsa nasıl çıkacağımı söyleTest etmek için: Claude’dan git commit -m “test” çalıştırmasını iste. Engelleme mesajını anında görmelisin. Bir şey ters giderse /doctor yaz; kurulumundaki sorunları satır satır rapor eder.
7. settings.json: kontrol paneli
settings.json, bütün kurulumunun tek merkezi. Hangi modelle çalıştığın, neyi sormadan yaptığı, ekranın altında ne gördüğün, kancaların, izinlerin: hepsi burada.
Önce en kolay yolu söyleyeyim: bu dosyayı elle açmana gerek yok. Claude Code’un içinde /config yazıyorsun, sekmeli bir ayar ekranı açılıyor, tıklayarak değiştiriyorsun. Tek bir şeyi değiştirmek istersen /config verbose=true gibi doğrudan da yazabiliyorsun. Bir ayarın yüklendiğini doğrulamak için /status.
Dosya dört yerde durabilir ve hepsi üst üste biner. Ev dizinindeki ~/.claude/settings.json her projede geçerli. Proje içindeki .claude/settings.json git’e girer, ekibine gider. .claude/settings.local.json sadece sende kalır. Bir de şirketinin BT’sinin dayattığı, senin ezemediğin bir katman var. Çakışma olursa sıra şöyle: şirket kazanır, sonra local, sonra proje, en sonda sen.
Bu bölümdeki tek zor şey, hangi ayarların gerçekten var olduğunu bilmek. Blog yazılarında dolaşan maxTurns, verboseLogging gibi isimlerin çoğu uydurma; dosyaya yazarsan Claude Code dosyanın tamamını reddeder. Bunun ilacı basit: dosyanın en başına şu satırı ekletiyorsun.
"$schema": "https://json.schemastore.org/claude-code-settings.json"Bu tek satır, dosyayı açtığın editöre “bu dosyanın kuralları şunlar” diyor. Olmayan bir ayar yazdığın anda altı kırmızı çizilir, yanlışı kaydetmeden fark edersin. Aşağıdaki prompt bu satırı senin için koyuyor.
Bir de yazım konusunda küçük bir uyarı. Aşağıda permissions.defaultMode gibi noktalı isimler göreceksin. Bu, dosyada gerçekten o adla bir satır olduğu anlamına gelmiyor; “permissions bölümünün içindeki defaultMode ayarı” demenin kısa yolu. Dosyayı elle açarsan iç içe kutular hâlinde durduklarını göreceksin. Zaten elle açmanı önermiyorum: /config bunu senin için yapıyor.
Sana en çok dokunacak altı ayar şunlar.
Model. Günlük iş için doğru varsayılan Sonnet 5: hız ve zekâ dengesi. Karmaşık, uzun soluklu işlerde Opus 5, basit işlerde en hızlısı olan Haiku 4.5, saatlerce kendi başına çalışan ajanlarda ise Fable 5 var. Dosyaya uzun model kimliği yazma; sonnet ya da opus kısayolunu kullan, çünkü kimlikler değişiyor, kısayollar kalıyor. Bir de fallbackModel var: seçtiğin model yoğunsa Claude sessizce yedeğe geçiyor, sen beklemiyorsun.
İzin modu. Claude’un ne kadar özgür olacağını belirliyor. Günlük iş için doğru varsayılan acceptEdits: dosya düzenlemelerini sormadan yapar, komut çalıştırmadan önce her zaman sorar. Altı mod var ve Shift+Tab ile oturum ortasında aralarında geziniyorsun. En yenisi auto: izinleri kendi onaylıyor ama arka planda bir güvenlik denetleyicisi her hareketi senin isteğinle karşılaştırıyor. Hiçbir şey sormasın diyenler için bypassPermissions de var; onu bilerek ve isteyerek seç.
İzin kuralları. Bu yazıdaki en yüksek getirili üç satır. deny listesine yazdığın şey hiçbir koşulda olmaz: .env dosyalarını okumak, secrets klasörüne girmek, dışarıya istek atmak. allow listesi de tersi: her seferinde sorulmasını gereksiz bulduğun güvenli komutlar.
Durum satırı. Elle yazmaya kalkışma; /statusline yazıp ne görmek istediğini normal cümleyle söylüyorsun, betiği Claude yazıyor. Gösterebileceği şeyler: model adı, oturumun o ana kadarki maliyeti, bağlamın yüzde kaçının dolduğu, git dalın, efor seviyesi, açık pull request’in. En sevdiğim ise 5 saatlik kotanın yüzde kaçını yediğin. Gösteremediği bir şey de var: önbellek isabet oranı diye bir alan yok, boşuna uğraşma.
Hız ve efor. /fast basit işlerde hızlı moda geçiriyor, /effort ise düşünme derinliğini low’dan max’a ayarlıyor. Basit bir yeniden adlandırma için max efor harcamak para yakmak; mimari kararı için low kullanmak da kendini kandırmak.
Dil. Ayar dosyasına language olarak turkish yazarsan Claude varsayılan olarak Türkçe cevap veriyor. Oturum başlıklarını ve sesli dikteyi de Türkçeye çeviriyor. Tek satır, büyük fark.
Şu promptu yapıştır:
CLAUDE.md dosyamı oku, tercihlerimi anla.
~/.claude/settings.json dosyası var mı, bak.
Bana eksiksiz bir ~/.claude/settings.json hazırla (varsa güncelle).
Şablon değil, gerçekten çalışan bir dosya olsun.
ÖNEMLİ KURAL: Sadece gerçekten var olan ayarları kullan. Emin
olmadığın bir anahtarı yazma; geçersiz tek bir anahtar dosyanın
tamamının reddedilmesine yol açıyor. Dosyanın en başına $schema
satırını koy, böylece hatalı anahtarları editörümde görebileyim.
Şunları ayarla:
1. Model
- Varsayılan sonnet olsun (hız ve zekâ dengesi)
- Uzun model kimliği yerine kısayol kullan
- Karmaşık işlerde /model ile opus’a nasıl geçeceğimi anlat
- Model yoğun olduğunda devreye girecek bir fallbackModel zinciri kur
2. İzin modu
- permissions.defaultMode: acceptEdits
(dosya düzenlemelerini sormadan yap, komut çalıştırmadan
önce her zaman sor)
- Bunun neden günlük iş için doğru varsayılan olduğunu bir
cümleyle açıkla
- Bütün modları bana kısaca tanıt: default, acceptEdits, plan,
auto, dontAsk, bypassPermissions. Özellikle auto modunun ne
yaptığını ve benim işim için uygun olup olmadığını söyle
- Shift+Tab ile oturum ortasında mod değiştirmeyi göster
3. İzin kuralları
- permissions.deny listesine hiçbir koşulda olmasını istemediğim
şeyleri koy (.env okuma, secrets klasörü gibi)
- permissions.allow listesine her seferinde sorulmasını gereksiz
bulduğum güvenli komutları koy
- Bu iki listenin neden CLAUDE.md’ye yazılan kurallardan daha
güçlü olduğunu bir cümleyle açıkla
4. Otomatik hafıza
- Zaten varsayılan olarak açık. Kapalı değilse dosyaya gereksiz
satır ekleme; sadece /memory ekranından doğrulamamı söyle
5. Durum satırı
- Bunu elle yazma. Bana /statusline komutunu ve ne yazacağımı
kelimesi kelimesine göster
- Şunları görmek istiyorum: model adı, oturum maliyeti, bağlamın
yüzde kaçının dolduğu, 5 saatlik kotamın yüzde kaçını yediğim
ve git dalım
- Durum satırının gösteremediği bir şey istediysem söyle,
boşuna uğraşmayayım
6. Hız ve efor
- /fast ne işe yarar, hangi işlerde açayım
- /effort (low, medium, high, xhigh, max) ne işe yarar, hangi
işte hangisini kullanayım
7. Dil
- language ayarını turkish yap
8. Kancalar
- 6. adımda kurduğumuz kancaları kaydet, mutlak yol kullan
9. Küçük konfor ayarları
- verbose: false (temiz çıktı)
- preferredNotifChannel (iş bitince haber ver)
- cleanupPeriodDays için makul bir değer
Dosyayı yazdıktan sonra:
- Her ayarı tek cümleyle, sade Türkçeyle açıkla
- Bu dosyada en sık değiştireceğim 3 şeyi söyle
- Dosyayı hiç açmadan oturum ortasında neleri değiştirebileceğimi
söyle (/config, /model, /fast, /effort)
- /status ile ayarların yüklendiğini nasıl doğrulayacağımı gösterBir şeyi bozarsan panik yapma: /doctor kurulumundaki sorunları listeler, /status hangi ayar dosyalarının yüklendiğini gösterir. Ayarları kaydettiğin an devreye giriyor, Claude Code’u kapatıp açmana gerek yok. Tek istisna model: onu değiştirmek için /model yazacaksın.
Arkası Yarın
Bugün dört şey kurdun: beceriler, kurallar, kancalar ve ayar dosyası. Claude artık “akıllı asistan” değil; nasıl çalıştığını bilen, neyi yapıp neyi yapmayacağı belli olan bir sistem.
Yarın 3. Bölüm: GÜÇ. Araçlarını birbirine bağlıyoruz, iş akışlarını otomatiğe alıyoruz ve sen uyurken çalışan kısmı kuruyoruz.




