LLM ile kod yazarken yaygın hataları azaltmaya yönelik davranış rehberi. Kod yazma, review veya refactoring sırasında kullanarak aşırı karmaşıklaştırmayı önleyin, hedefli değişiklikler yapın, varsayımları ortaya çıkarın ve doğrulanabilir başarı kriterlerini tanımlayın.
cd ~/.claude/skills
git clone https://github.com/multica-ai/andrej-karpathy-skills.git andrej-karpathy-skills mkdir -p ~/.claude/skills/karpathy-guidelines
curl -fsSL https://raw.githubusercontent.com/multica-ai/andrej-karpathy-skills/HEAD/skills/karpathy-guidelines/SKILL.md \
-o ~/.claude/skills/karpathy-guidelines/SKILL.md LLM kodlama hatalarını azaltmak için tasarlanmış davranışsal yönergeler. Andrej Karpathy'nin LLM kodlama tuzakları hakkındaki gözlemlerinden türetilmiştir.
Tradeoff: Bu yönergeler hız yerine dikkat çekmeye yöneliktir. Basit görevler için kendi yargınızı kullanın.
Varsayım yapma. Kafa karışıklığını gizleme. Tradeoff'ları ortaya çıkar.
Uygulamadan önce:
Sorunu çözen minimum kod. Hiçbir spekülasyon yok.
Kendine sor: "Senior bir mühendis bunu aşırı karmaşık derdi mi?" Evetse, basitleştir.
Sadece gerekli olanı değiştir. Sadece kendi karışıklığını temizle.
Mevcut kodu düzenlerken:
Değişikliklerin yetim oluşturması durumunda:
Test: Her değiştirilen satır doğrudan kullanıcı isteğine izlenebilir olmalı.
Başarı kriterlerini tanımla. Doğrulanana kadar döngü yap.
Görevleri doğrulanabilir hedeflere dönüştür:
Çok adımlı görevler için kısa bir plan belirt:
1. [Adım] → doğrula: [kontrol]
2. [Adım] → doğrula: [kontrol]
3. [Adım] → doğrula: [kontrol]
Güçlü başarı kriterleri bağımsız döngü yapmanı sağlar. Zayıf kriterler ("çalışır hale getir") sürekli açıklama gerektirir.
Herhangi bir yaratıcı çalışmaya başlamadan önce bunu mutlaka kullanın - feature oluştururken, component inşa ederken, functionality eklerken veya davranış değiştirirken. Kullanıcı niyetini, gereksinimleri ve tasarımı implementation öncesinde araştırır.
Uygulama tamamlandığında, tüm testler geçtiğinde ve çalışmanızı nasıl entegre edeceğinize karar vermeniz gerektiğinde kullanın - merge, PR veya cleanup seçeneklerini sunarak geliştirme sürecinin tamamlanmasını rehberlik eder.
Kod incelemesi geri bildirimi alırken, önerileri uygulamadan önce kullanın; özellikle geri bildirim belirsiz veya teknik olarak şüpheli görünüyorsa - performatif anlaşmadan veya körü körüne uygulamadan ziyade teknik titizlik ve doğrulama gerekir.
Görevleri tamamlarken, büyük özellikleri hayata geçirirken veya merge etmeden önce çalışmanın gereksinimleri karşıladığını doğrulamak için kullanın.
Yeni bir feature üzerinde çalışmaya başlarken veya implementasyon planını yürütmeden önce kullanın - native araçlar veya git worktree fallback aracılığıyla izole edilmiş bir workspace sağlar.
Herhangi bir konuşma başlatırken kullanın - skill'lerin nasıl bulunacağını ve kullanılacağını belirler, clarification soruları da dahil olmak üzere HERHANGİ bir yanıt vermeden önce skill invocation gerektirir.