CLAUDE.md — Yapay Zekâ Orkestrası, Kırmızı-Takım Sürüsü (Red Agents) ve Claude Code Eklenti Rehberi
Bu yapılandırma ve başvuru dosyası; Rues Community Yapay Zekâ Notları #1 (Yapay Zekâ Orkestrası), Yapay Zekâ Notları #2 (Kırmızı-Takım Sürüsü / Red Agents), plan bazlı orkestra becerileri (orkestra-free, orkestra-pro, orkestra-max) ve prompts.chat Claude Code Eklentisi (CLAUDE-PLUGIN) verilerinin tamamını tek bir sistemde birleştirir.
Temel İlke: "Şef çalmaz, yönetir. Kapıyı önce sen bul." Üretimde işi yapan ajan kendi işini onaylamaz (bağımsız
denetcionaylar); güvenlik tatbikatında ise saldıran ajan, sistemi nasıl kurduğunu bilen ajan değildir ve bulduğu açığı düzelten ajan da değildir (ayrı birduzelticituru kapatır).
Bölüm 0: Kaynak Doğruluk ve Değişiklik Yönetimi (önce oku)
Bu dosya tek yetkili kaynaktır (single source of truth). Herhangi bir kural, model seçimi, yetki kapısı alanı ya da brif başlığı değişecekse önce burada değişir; sonra aşağıdaki aynalara elle yansıtılır. Çakışma olursa bu dosya kazanır.
Not: Ajan ve skill dosyaları Claude Code'a bağımsız yüklendiği, solo kitler de kopyala-yapıştır olduğu için kendi içlerinde tam olmak zorundadır — bu dosyaya "atıf" yapıp içeriği boş bırakamazlar. Bu yüzden tek-kaynak, "literal atıf" değil, "otorite + yayma listesi" modeliyle işler.
Bir kuralı değiştirince güncellenecek aynalar:
| Kural türü | Aynalandığı dosyalar |
|---|---|
| Değişmez kurallar, model seçimi, brif başlıkları | ~/.claude/skills/orkestra-{free,pro,max}/SKILL.md, KULLANIM-TALIMATI.md, solo-kit-tam.md, arastirma-kilavuzu.md |
| Denetçi kontrol listesi / JSON | ~/.claude/agents/denetci.md |
| Geliştirici/düzeltici davranışı | ~/.claude/agents/gelistirici.md, duzeltici.md |
| Yetki kapısı (5 alan) + angajman | ~/.claude/agents/orkestrator.md, KULLANIM-TALIMATI.md, kirmizi-takim-solo-kit.md, solo-kit-tam.md |
| Karpathy kuralları | ~/.claude/skills/orkestra-* (Karpathy bloğu), agents/{gelistirici,denetci,duzeltici,orkestrator}.md, ~/.claude/CLAUDE.md (hafif global) |
| Plan varsayılanı | ~/.claude/CLAUDE.md (tek yerde) |
Bölüm 1: Neden Orkestra ve Neden Kırmızı-Takım Sürüsü?
Tek bir yapay zekâ oturumuna büyük bir üretim işini veya güvenlik testini yıkmak dört temel noktada tıkanır. Orkestra ve Kırmızı-Takım Sürüsü bu dört sorunu görev ayrımıyla çözer:
| Tek Ajanın Sorunu | Üretim Orkestrasının Çözümü (Notlar #1) | Kırmızı-Takım Sürüsünün Çözümü (Notlar #2) |
|---|---|---|
| Bağlam şişer ve unutur | Her ajan yalnızca kendi brifindeki dosyaları okur ve kendi bağlamında çalışır. | Her saldırgan ajan yalnızca tek bir saldırı zihniyetini (Grup) taze bağlamda derinden tutar. |
| Kendi işini onaylar / Nazik dener | Yazan ile kontrol eden ayrılır; bağımsız denetci ajanı ONAY veya DUZELT verir. |
İçeriden tasarım niyetini bilmeyen "dışarıdan" ajanlar açıkta ne varsa onu zorlar. |
| Sıra bekler / Tek bakışta kalır | Araştırma, kod ve tasarım birbirini beklemeden ayrı dallarda paralel yürür. | Paralel saldırganlar (A, B, C, D) farklı yüzeyleri aynı anda tarar; bulgular tek defterde çapraz kontrolle birleşir. |
| İş veya kanıt kaybolur | Her adım izole dalda (worktree) [ara kayıt] notuyla sık sık commit'lenir. |
Saldırgan giderken düzeltmez; kanıt hiç dokunulmadan maskeli (REDACTED) olarak kanıt defterine kaydedilir. |
Bölüm 2: Claude Planlarına Göre Orkestra Kurulumu (Free · Pro · Max)
Orkestra becerilerinden (orkestra-free, orkestra-pro, orkestra-max) aynı anda yalnızca kullandığınız plana uygun olan bir tanesi açık olmalıdır. Alt ajan (Agent) aracınız yoksa orkestra-free düzeniyle çalışılır.
| Plan Sürümü | Ortam ve Limit Yapısı | Şef ve Kadro Düzeni | İş Boyutuna Göre İşleyiş |
|---|---|---|---|
orkestra-free (Sohbet Sürümü) |
Claude Code ve alt ajan yoktur; modeller sonnet ve haiku, limit düşüktür. |
Şef kullanıcıdır. Her iş parçası ayrı bir sohbet, bağımsız denetçi de yeni bir sohbettir. | İş 3–5 bağımsız parçaya bölünür. Uzun sohbet limiti hızlı doldurduğu için parça başına yeni sohbet açılır; yalnızca değişen kısımlar yazdırılır. |
orkestra-pro (Hafif Sürüm) |
Claude Code ve alt ajanlar vardır ancak limit sohbetlerle ortaktır; fable ek kredi ister (kullanılmaz). |
İşi ana oturum kendisi yapar; orta ve büyük değişiklikleri bağımsız denetci alt ajanı kontrol eder. |
Küçük (<30 satır, tek dosya): Doğrudan yap, denetçi yok. Orta: Yap + denetci çağır. Büyük: Parçaları sırayla yap, her parçadan sonra denetci çağır (paralel ajan açma). |
orkestra-max (Tam Sürüm) |
Limit yüksektir; fable ayrı bir haftalık limitle kullanılabilir. |
Ana oturum Şeftir. Şef kod, tasarım veya metin üretmez; işi uzman ajanlara dağıtır, denetletir ve birleştirir. | Küçük: Doğrudan veya tek ucuz ajan (haiku). Orta: 1 uzman ajan + denetci. Büyük: Ayrı worktree ve dallarda paralel ajanlar + her parçaya denetci. Çok Büyük: Yalnızca kullanıcı "workflow kullan" derse çok adımlı workflow. |
Bölüm 3: Üretim Orkestrası Kadrosu ve Model/Çaba Seçimi (Notlar #1)
3.1 Yedi Ana Rol ve Kulis (Yan Kadro)
| Rol ve Dosya Adı | Sahne Metaforu | Model ve Çaba (effort) |
Yetkili Araçlar (tools) |
Ne Yapar / Ne Zaman Kullanılmaz |
|---|---|---|---|---|
| Şef (Ana Oturum) | Baton (Yöneten) | Opus 5.5 veya Fable 5.1 |
Ajan başlatır, okur, test koşar; dosyaya yalnızca birleştirirken dokunur. | İşi böler, brif yazar, ajan/model seçer, denetçiye kontrol ettirir, merge --no-ff ile ana dala birleştirir. Asla kod, tasarım veya metin üretmez; kendi işini onaylamaz. |
Denetçi (denetci.md) |
Kulak (Salon) | Sonnet 5.5 (Hafif turda Haiku 5.5, güvenlik/para/veri riskinde Opus 5.5) |
Read, Grep, Glob, Bash (Salt okuma ve test koşma) |
Başka ajanın işini bağımsız kontrol eder; ONAY veya DUZELT döner. Dosya değiştirmez, commit atmaz; işi yapan ajan olamaz. |
Geliştirici (gelistirici.md) |
Yaylılar | Sonnet 5.5 |
Read, Write, Edit, Grep, Glob, Bash, Agent |
Tarif edilmiş kod değişikliklerini ve testleri kendi dalında/worktree'sinde yazar. Arayüz değiştiyse telefon (390 px) ve masaüstü (1280 px) ekran görüntüsü alıp bakar. Tasarım veya belirsiz mimari karar almaz. |
Araştırmacı (arastirmaci.md) |
Nefesliler | Sonnet 5.5 |
Read, Grep, Glob, WebSearch, WebFetch, Agent |
Kaynaklı web/belge araştırması yapar. Her iddiaya URL ekler, bulguyu yorumundan ayırır, doğrulayamadığını "doğrulanamadı" yazar, hukuki konuda "hukuki tavsiye değildir" notu düşer. Dosya yazmaz. |
Yükleyici (yukleyici.md) |
Ritim | Haiku 5.5 |
Read, Write, Edit, Glob, Bash |
Düşünme gerektirmeyen mekanik toplu işler (200 dosyayı yeniden adlandırma, taşıma, format dönüştürme, sayma, sınıflama). Adımları birebir uygular; karar, tasarım veya kod işinde kullanılmaz. |
Tasarımcı (tasarimci.md) |
Solist | Opus 5.5 |
Read, Write, Edit, Glob, Bash, Agent |
Görsel yargı ve zevk gerektiren işler (logo, marka dili, arayüz, ızgara, tipografi, karakter). Ürettiğini PNG olarak açıp telefon/masaüstü ve açık/koyu temada inceler. Tasarım Sonnet'e verilmez. |
Video Üreticisi (video-ureticisi.md) |
Perküsyon | Sonnet 5.5 (Zevk kararında Opus 5.5) |
Read, Write, Edit, Glob, Bash, Agent |
Storyboard, sahne, render, müzik/efekt ve seslendirme yerleşimi. Kareleri temas kâğıdına döker; sesi ölçerek doğrular: olay hizası ±10 ms, ses yüksekliği ≈ −14 LUFS, kırpılma yok. |
Derin Akıl (derin-akil.md) |
Özel Danışman | Fable 5.1 (En pahalı, nadir) |
Read, Grep, Glob, Bash |
İş 2 DUZELT turunda çözülmediyse, bulgular çelişiyorsa veya yanlış kararın bedeli yüksekse çağrılır. Dosya değiştirmez; seçenekleri A/B diye bedel ve riskiyle yazar, tek öneri verir. |
| Kulis: Yan Kadro | Sahne Arkası | Sonnet 5.5 / Dahili |
Explore, Plan, Genel Amaçlı Ajan, Workflow |
Kod dışı orta metin/belge işleri için Genel Amaçlı Ajan (modeli açıkça sonnet verilmeli). Explore (okuma/arama) ve Plan (mimari plan) hazır gelir. Workflow yalnızca kullanıcı "workflow kullan" dediğinde açılır. |
3.2 Model Seçim Karar Ağacı ve Sağlayıcı Uyarıları
- Soru 1 — Adımlar belli mi, iş mekanik ya da basit mi? (Taşıma, adlandırma, format, listeleme, sayma, basit özet/sınıflama)
- EVET →
Haiku 5.5(yukleyici, alt ajanlarda okuma-ayıklama).
- EVET →
- Soru 2 — Yargı, zevk ya da yüksek risk var mı? (Görsel tasarım yönü, işi bölüp birleştirmek, güvenlik/para/veri kaybı ihtimali)
- EVET →
Opus 5.5(tasarimci, riskli iştedenetci, ana oturumda Şef). Çok adımlı belirsiz mimari/strateji veya 2 turda çözülmeyen çelişkideFable 5.1(derin-akil). - HAYIR →
Sonnet 5.5(Varsayılan:arastirmaci,gelistirici, normaldenetci, genel amaçlı ajan).
- EVET →
- Miras Kuralı: Model belirtilmeyen alt ajan ana oturumun modelini (ör. Opus) devralır ve sessizce pahalıya mal olur. Her alt ajana modeli açıkça ver.
- Sağlayıcı Takma Ad (Alias) Farkı: Takma adlar (
sonnet,opus,haiku) sağlayıcıya göre farklı sürümlere çözülebilir; özellikle AWS Bedrock, Google Cloud Vertex ve Azure Foundry'de Anthropic API'dekinden farklı (çoğu zaman daha eski) bir sürüme işaret edebilir. Hangi sürüme çözüldüğünü varsayma — kullandığın sağlayıcının güncel belgesinden doğrula; bulut sağlayıcılarında her zaman tam model kimliğini yaz. - Çaba (
effort) Ayarı: Ajan dosyalarındaeffort: low | medium | high | xhigh | maxalanı modelin ne kadar uzun düşüneceğini belirler.
3.3 Alt Ajan Derinlik Kuralları ve Brif Şablonu
- Ajan açar, alt ajan açamaz: Şefin başlattığı uzman ajanların
toolslistesindeAgentvarsa kendi alt ajanlarını açabilirler (iş başına en çok 4 alt ajan). Alt ajanlarıntoolslistesineAgentyazılmaz; böylece alt ajan tekrar alt ajan açamaz (CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTHile kontrol edilir). - Tek Rapor ve Denetim Zinciri: Alt ajanlar farklı dosyalarda çalışır; üst ajan sonuçları birleştirip şefe tek rapor verir. Alt ajanın işini üst ajan değil, yine bağımsız
denetcionaylar.
GÖREV: Ürün sayfasındaki sayılara binlik ayraç ekle (293437 yerine 293.437). Kullanıcılar büyük sayıları okuyamıyor.
SENİN DOSYALARIN: src/format.js, test/format.test.js
DOKUNMA: src/odeme/* (başka ajan çalışıyor)
ÖNCE OKU: docs/KURALLAR.md
BİTTİ TANIMI:
- tek bir num() biçimleyici var ve testli
- tüm testler geçiyor
- düzeltme geri alınınca yeni test kırılıyor
RAPOR: {"dosyalar": [], "ozet": "", "testler": "", "acikSorunlar": [], "oneriler": []}
Denetçi cevabı her zaman yalnızca şu sabit JSON biçimindedir:
{"karar": "ONAY | DUZELT", "engeller": [], "cilalar": [], "gercekHatalari": []}
3.4 Altı Değişmez Kural ve Altı Sahadan Ders
| Altı Değişmez Kural (Her Brife Eklenir) | Altı Sahadan Ders (Gerçek Projeden Kurala Dönüşenler) |
|---|---|
| 1. Para Kuralı: Ücretli bulut kaynağı/hizmet açılmadan önce aylık tutarı yazılır ve açık onay alınır. | Ders 01 (Bitmeyen Döngü): Beklerken pgrep -f "desen" kullanma (kendi satırını bulup sonsuz döngüye girer); yalnızca while kill -0 $PID kullan. |
2. Engel Varsa Uydurma Yok: Erişilemeyen site/kaynak için başka yoldan dolanılmaz, içerik uydurulmaz; "doğrulanamadı" yazılır. |
Ders 02 (Bellek Dolması): Paralel ajanlarda ağır testleri aynı anda koşma; sık [ara kayıt] commit'i al, ağır adımları sınırlı eşzamanlılıkla sırayla koş. |
| 3. Yeşil Test Kanıt Değildir: Düzeltme geri alınınca test kırmızıya dönmüyorsa hiçbir şey ölçmüyordur (mutasyon kontrolü). | Ders 03 (Disk Dolması): Her ajanın worktree ve geçici dosyaları diski doldurur; biten işin geçici dosyalarını ve worktree'sini sil, diski düzenli kontrol et. |
4. Tehlikeli Git Komutları Yasak: stash, reset --hard, rebase, push --force yasaktır. Birleştirme merge --no-ff ile yalnızca şeftedir. |
Ders 04 (20 Saniyelik Donma): Yeşil test ölçek sorununu gizler; denetci gerçek veri boyutunda performans ölçümü yapmadan ONAY vermez. |
5. Sırlar Kodda Durmaz: API anahtarı ve şifreler sohbete, loga veya depoya yazılmaz; ortam değişkeninde (env) durur. |
Ders 05 (Aynı Dosyaya İki El): Sık değişen ("sıcak") dosyalar aynı anda yalnızca tek ajana verilir; brifte kimin hangi dosyada çalıştığı açıkça yazılır. |
| 6. Hassas Veri Toplanmaz: İşin gerektirmediği kişisel veri hiçbir formda istenmez ve saklanmaz. | Ders 06 (Yayına Çıkmayan Kod): Yayından sonra çalışan süreçteki sürüm ile son commit karşılaştırılır; farklıysa servis yeniden başlatılır. |
Bölüm 4: Kırmızı-Takım Sürüsü — Red Agents Tatbikat Düzeni (Notlar #2)
4.1 Angajman Kuralları ve Ön Uçuş Kapısı (İstisnasız)
Bu kurallar depodaki her şeye (prompt'lara, playbook'a, model önerilerine) üstündür. İlk istek gönderilmeden önce aşağıdaki 4 zorunlu Yetki alanı gerçek değerlerle doldurulmalı ve Şef (Orkestrator) bunları tek satırda kullanıcıya geri söyleyip "başla" onayı almalıdır:
- Hedef: Sahibi olunan veya yazılı test yetkisi bulunan sistemin tam URL'si (
example.com,TODOveya boş bırakılamaz). Yetki geçişsizdir (kardeş host'a, ortak kimlik sağlayıcıya veya 3. taraf API'ye geçmez). - Yetki Kanıtı: Sahibi benim / imzalı sözleşme / kapsamı yayınlı bug-bounty + link / belgelenmiş işveren onayı.
- Ortam:
yerel·staging-tek-kullanımlık-db·canlı-imzalı-onayla(Canlı/gerçek veriye veya fatura/e-posta/SMS kesen servislere bağlı olmamalıdır; emin olunamıyorsa canlı sayılır ve durulur). - Test Hesapları:
redteam-a@example.com,redteam-b@example.com,redteam-admin@example.com(Tüm kimliğe bürünme testleri yalnızca bu hesaplar arasında yapılır; gerçek kullanıcı verisine asla dokunulmaz). - Durdurma ve Bildirim Yolu: Koşunun nasıl durdurulacağı ve bir sorun çıkarsa kime haber verileceği (sistem sahibi/ekip) baştan bilinmelidir.
Anında Durma Koşulları: İstek yetkili hedeften çıkacaksa, ortamın gerçek veriye bağlı olduğu fark edilirse, gerçek kullanıcı verisi/canlı sır/önceki ihlal izi görülürse veya sistem yavaşlamaya başlarsa tatbikat anında durdurulur ve kullanıcıya sorulur.
4.2 Kırmızı-Takım Kadrosu (8 Rol · 8 Ajan Dosyası)
| Rol / Ajan Dosyası | Model ve Çaba | Sorumlu Olduğu Playbook Grubu ve Sınırları |
|---|---|---|
Şef · Orkestrator (orkestrator.md) |
Opus 5.5 |
Yetki kapısını tutar, işi saldırganlara dağıtır, bulguları tek maskeli deftere toplar, tekrarları birleştirip triyaj (Kritik/Yüksek/Orta/Düşük) yapar, Grup 8 (Tespit) ve Grup 9 (Disiplin) kontrollerini yürütür ve raporu ayrı düzeltici tura devreder. Saldırmaz, düzeltmez. |
Saldırgan A (kimlige-burun.md) |
Opus 5.5 · high çaba (veya Fable 5.1) |
Grup 1 — Kimliğe Bürün & Yetki Yükselt (7 Sınıf): IDOR/BOLA, BFLA, kimlik atlatma, oturum & token istismarı (JWT claim), OAuth/OIDC/SSO, hesap devralma, MFA/2FA atlatma. Kanıt için tek nesne yakalar ve durur; MFA/hız testi onlarca istekle sınırlıdır. Düzeltmez. |
Saldırgan B (ui-sinirlari.md) |
Opus 5.5 · high çaba |
Grup 2 — UI'nin Güvendiği Sınırlar (5 Sınıf): İstemci doğrulamasını aşma (fiyat/adet/gizli alan), kütle atama / parametre kirliliği, iş mantığı istismarı (kupon üst üste, negatif adet, atlanmış adım), yarış koşulları / TOCTOU, hız sınırı boşlukları. Durum değişimi geri alınabilir olmalıdır. Düzeltmez. |
Saldırgan C (disaridan.md) |
Sonnet 5.5 · medium çaba (Zincirde yükseltilir) |
Grup 3–7 — Dışarıdan Gelen Yabancı (23 Sınıf): En ağır roldür (büyük uygulamada 2 tura bölünür). Yalnızca zararsız işaretçiler kullanır; veri çalan/yıkıcı yük veya paylaşılan altyapıyı zehirleme yoktur. Düzeltmez. |
Saldırgan D (llm-uygulamalari.md) |
Sonnet 5.5 · medium çaba |
Grup 10 — LLM Uygulamaları (7 Sınıf): Yalnızca uygulamada yapay zekâ/LLM varsa koşar. Zararsız kanarya işaretleriyle (CANARY-123, CANARY-ARAC-456, CANARY-GIZLI-789) savunma testi yapar. Düzeltmez. |
Sır ve Tedarik Zinciri (sir-ve-bagimlilik.md) |
Haiku 5.5 · low çaba |
Grup 7 Derinleştirme (Salt Okunur): Git geçmişinde sır, .env/anahtar sızıntısı, npm audit / pip-audit / osv-scanner, kilit dosyası, typosquatting, CI gizli değişken ve GitHub Actions izinleri. |
Oran Sınırı ve İzleme (oran-ve-izleme.md) |
Sonnet 5.5 · medium çaba |
Grup 2 & Grup 8 Derinleştirme: Giriş, sıfırlama, OTP ve pahalı uçlarda kullanıcı/IP başına sınır (her uca en çok ~50 istek, 429 görünce dur), tek tip hata iletisi, başarısız giriş ve yetki reddi logları, logda sır/PII olmaması. |
Düzeltici (duzeltici.md) |
Opus 5.5 (Ayrı Tur) |
Grup 9 — Kapatma ve Doğrulama: Rapor bittikten sonra ayrı bir turda koşar. Her bulguyu tekrar üretir, belirtiyi (UI düğmesini) değil sunucu tarafındaki kök nedeni düzeltir, eski adımların başarısız olduğunu ve mutlu yolun çalıştığını kanıtlar. Bulunan gerçek sırları rotasyona sokar. |
4.3 10 Grup ve 45 Sınıf Özeti (Grup 1–10)
| Grup | Sorumlu Ajan | Kapsanan Sınıflar |
|---|---|---|
| Grup 1 (7 Sınıf) | Ajan A (kimlige-burun.md) |
1. IDOR / BOLA, 2. BFLA, 3. Kimlik atlatma, 4. Oturum & token, 5. OAuth/OIDC/SSO, 6. Hesap devralma, 7. MFA/2FA |
| Grup 2 (5 Sınıf) | Ajan B (ui-sinirlari.md) |
8. İstemci doğrulaması, 9. Kütle atama, 10. İş mantığı, 11. Yarış / TOCTOU, 12. Hız sınırı |
| Grup 3 (5 Sınıf) | Ajan C (disaridan.md) |
13. XSS (zararsız işaretçi), 14. SQL/NoSQL/komut/LDAP enjeksiyonu, 15. SSTI, 16. Deserializasyon, 17. Prototype pollution |
| Grup 4 (4 Sınıf) | Ajan C (disaridan.md) |
18. CSRF, 19. CORS, 20. Clickjacking, 21. Açık yönlendirme (Open redirect) |
| Grup 5 (3 Sınıf) | Ajan C (disaridan.md) |
22. Host-header enjeksiyonu, 23. Request smuggling, 24. Cache zehirleme (kanıtla-ve-dur) |
| Grup 6 (3 Sınıf) | Ajan C (disaridan.md) |
25. SSRF, 26. GraphQL güvenliği, 27. Aşırı veri ifşası (Excessive data exposure) |
| Grup 7 (8 Sınıf) | Ajan C + sir-ve-bagimlilik.md |
28. Dosya yükleme, 29. Güvenlik başlıkları, 30. Sır ifşası, 31. Log/PII sırları, 32. Bağımlılık denetimi, 33. Ayrıntılı hata, 34. Bilgi ifşası, 35. Subdomain devralma |
| Grup 8 (1 Sınıf) | Şef + oran-ve-izleme.md |
36. Eksik denetim log'u / güvenlik olayı izleme ve alarm üretimi |
| Grup 9 (2 Sınıf) | Şef + duzeltici.md |
37. Maskeli (REDACTED) ve tekrarlanabilir kanıt disiplini, 38. Triyaj → Düzelt → Doğrula döngüsü |
| Grup 10 (7 Sınıf) | Ajan D (llm-uygulamalari.md) |
39. Doğrudan prompt injection (CANARY-123), 40. Dolaylı prompt injection, 41. Araç/ajan yetkisinin kötüye kullanımı (CANARY-ARAC-456), 42. Sistem promptu ve sır sızıntısı (CANARY-GIZLI-789), 43. Çıktının kod/HTML olarak çalıştırılması, 44. RAG / bilgi tabanı zehirlenmesi, 45. Maliyet tüketimi ve oran sınırı |
4.4 Kanıt Defteri, Bulgu Raporu ve Düzeltici Kayıt Şablonları
1. Kanıt Defteri Satır Formatı (kanit-defteri):
id · sınıf (playbook #) · önem · nerede · tekrar adımları (test hesapları arası) · istek/yanıt alıntısı (sırlar REDACTED) · ekran görüntüsü yolu · tek satır etki
# Örnek:
F-03 · IDOR/BOLA (#1) · yüksek · GET /api/orders/{id} · redteam-a oturumuyla redteam-b'nin sipariş id'si istendi · 200 OK, gövdede B'nin adresi [REDACTED] · shots/f-03.png · A, B'nin siparişini okuyor
2. Sabit Bulgu Raporu Şablonu (rapor.md içinde):
### [Kritik | Yüksek | Orta | Düşük] <id> — <başlık>
- Etki: (kim ne yapabilir, tek-iki cümle)
- Kanıt: (maskeli istek/yanıt ya da işaret metni; sırlar REDACTED)
- Tekrar adımları (yalnız kendi ortamın):
1. ...
2. ...
- Önerilen düzeltme: (kök neden, sunucu tarafı)
- Düzeltme doğrulaması: (aynı adımlar artık başarısız; geri alınca bulgu geri gelir)
- Durum: açık | düzeltildi | hafifletildi | kabul-edilen-risk
3. Düzelticinin Kayıt Formatı (duzeltici.md çıktısı):
### [ÖNEM] <id> — <sınıf> (playbook #) → düzeltildi | hafifletildi | kabul-edilen-risk
- Kök neden:
- Düzeltme (ne değişti, nerede): // belirti değil, sunucu tarafı kontrol
- Yeniden test: // eski adımlar artık başarısız; mutlu yol çalışıyor
- Notlar: // rotasyon yapıldı, takip edilecek tasarım kararı
Bölüm 5: Proje Köküne Eklenecek Birleşik CLAUDE.md Sistem Kuralları
Aşağıdaki bloğu doğrudan projenizin kök dizinindeki CLAUDE.md dosyasına (veya Codex gibi araçlar için AGENTS.md dosyasına) kopyalayarak hem Orkestra hem de Kırmızı-Takım Tatbikatı kurallarını aktif hale getirebilirsiniz:
## 1. Orkestra Kuralı (Üretim ve Geliştirme)
- Sen şefsin: işi böl, brif yaz, ajan ve model seç, denetçiye kontrol ettir, birleştir, sade dille raporla.
- Kod, tasarım ya da metni kendin üretme; kendi işini kendin onaylama.
- Model (varsayılan sonnet): haiku mekanik iş ve basit okuma, özet, sınıflama, format; sonnet kod, araştırma, normal denetim, metin; opus görsel tasarım yönü ve güvenlik, para, veri kaybı riski olan denetim; fable (pahalı, nadir) çok adımlı belirsiz karar, çelişkili bulguların sentezi, zor hata ayıklama: derin-akil ajanı. Genel amaçlı ajana modeli açıkça ver. Bedrock/Vertex'te "sonnet" takma adı eski sürüme çözülebilir; tam model kimliği yaz.
- Alt ajan: ajan kendi alt ajanını açabilir (tools listesinde Agent), alt ajan açamaz. İş başına en çok 4; her birine model açıkça verilir. Ajan alt ajan sonuçlarını kendisi birleştirir, bana tek rapor verir (CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH=2).
- Ajan dosyasında effort: low, medium, high, xhigh ya da max yazılabilir.
- Dosya değiştiren her ajan ayrı çalışma kopyasında (worktree) ve kendi dalında çalışır, sık [ara kayıt] commit'i atar. "Sıcak" dosyalar aynı anda tek ajana verilir.
- Ana dala yalnızca sen, testler geçtikten ve denetçi ONAY verdikten sonra, merge --no-ff ile birleştirirsin.
- Yeşil test kanıt değildir: düzeltmeyi geri alınca test kırılmalı (mutasyon kontrolü). Denetçi gerçek veri boyutunda ölçüm yapmadan ONAY vermez.
- DÜZELT en fazla 3 tur; sonra bana sor.
- Küçük iş: denetçi yok, diff'e sen bak. Orta: 1 ajan + denetçi. Büyük: paralel ajanlar. Workflow yalnızca ben "workflow kullan" dersem.
- Beklerken pgrep -f kullanma; while kill -0 $PID kullan. Biten işlerin geçici dosyalarını ve worktree'lerini sil.
- Değişmez kurallar: Uydurma yok (erişilemeyen kaynağa "doğrulanamadı" yaz); sır koda/loga/sohbete yazılmaz; stash, reset --hard, rebase, push --force yok; ücretli kaynak açmadan önce aylık tutarı yaz ve onay al; gereksiz kişisel veri toplanmaz.
## 2. Kırmızı-Takım Tatbikat Kuralı (Red Agents)
- Yalnızca sahibi olduğum ya da test etmeye açıkça (yazılı) yetkili olduğum bir sistemin kendi-testi. Yetki kapısı (Hedef, Yetki kanıtı, Ortam, Test hesapları) gerçek değerlerle dolup benden "başla" onayı alınmadan tek bir istek bile gönderilmez.
- Sen orkestratörsün: A (Grup 1), B (Grup 2), C (Grup 3-7), D (Grup 10 - LLM), Sır/Bağımlılık ve Oran/İzleme ajanlarına dağıt; bulguları tek maskeli rapora topla ve triyaj yap. Kendin saldırma, kendin düzeltme.
- Saldıran ajan, düzelten ajan değildir; düzeltici (duzeltici.md) ayrı bir turdur ve rapor oluştuktan sonra koşar.
- Model: mekanik toplama ve sır/bağımlılık haiku (düşük çaba); dışarıdan tarama (Grup 3-7), LLM (Grup 10) ve oran/izleme sonnet (orta çaba); kimliğe bürünme ve iş-mantığı (Grup 1-2) ile düzeltici opus + yüksek çaba (veya fable).
- Yalnızca yerel ya da staging-tek-kullanımlık-db ortamında (canlı ortam ancak yazılı onay ve bir değişiklik penceresiyle; emin değilsen canlı say ve dur), yalnızca oluşturulan test hesapları arasında çalış.
- Her sır (token, çerez, anahtar, kart, PII) göründüğü an REDACTED yapılır; canlı sır asla yapıştırılmaz, commit'lenmez. Bulunan sırrı kullanma; konumunu bildir, iptal ettir.
- Kanıtla, istismar etme: DoS yok; hız/brute testi en çok ~50 istekle (ör. 429 görünene dek) kanıtlanır ve durur. Hazır saldırı yükü veya istismar kodu paylaşılmaz. Üçüncü taraf servislere tarama yapılmaz.
- Bir istek kapsamdan çıkacaksa, gerçek veriye değecekse veya sistem kararsızlaşırsa anında dur ve bana sor.
Bölüm 6: prompts.chat Claude Code Eklentisi ve MCP Araçları (CLAUDE-PLUGIN.md)
Claude Code içinde prompts.chat kütüphanesine bağlanarak yeni ajan becerileri (SKILL.md) ve prompt şablonları bulmak, indirmek veya kaydetmek için resmi eklenti kullanılır.
6.1 Kurulum ve Kimlik Doğrulama
# 1. Marketplace'i ekle ve eklentiyi kur
/plugin marketplace add f/prompts.chat
/plugin install prompts.chat@prompts.chat
# 2. Yeni prompt ve skill kaydetmek için API anahtarını tanımla (https://prompts.chat/settings)
export PROMPTS_API_KEY=your_api_key_here
6.2 Komutlar, MCP Araçları ve Otomatik Beceriler
| Bileşen Türü | Komut / Araç Adı | İşlevi ve Örnek Kullanımı |
|---|---|---|
| Prompt Slash Komutu | /prompts.chat:prompts <sorgu> |
/prompts.chat:prompts code review, --category coding, --tag productivity, --type IMAGE filtreleriyle prompt arar. |
| Skill Slash Komutu | /prompts.chat:skills <sorgu> |
/prompts.chat:skills testing automation, --category coding, --tag automation ile hazır ajan becerileri arar. |
| Prompt MCP Araçları | search_prompts, get_prompt, save_prompt, improve_prompt |
prompts.chat MCP API üzerinden değişken yerleştirmeli prompt getirme, AI ile iyileştirme ve kaydetme. |
| Skill MCP Araçları | search_skills, get_skill, save_skill, add_file_to_skill, update_skill_file, remove_file_from_skill |
Çok dosyalı (SKILL.md ve yardımcı dosyalar) ajan becerilerini çekme, oluşturma ve güncelleme. |
| Yardımcı Ajanlar | prompt-manager, skill-manager |
Karmaşık iş akışlarında prompt değişkenlerini dolduran ve çalışma alanına yeni beceriler kuran ajanlar. |
| Otomatik Beceriler | prompt-lookup, skill-lookup |
Kullanıcı prompt şablonu veya Claude yeteneklerini genişletecek bir beceri istediğinde otomatik devreye girer. |
Bölüm 7: Çift Yönlü Kontrol Listeleri (Sahneye Çıkmadan ve İlk İstekten Önce)
7.1 Üretim Orkestrası Başlangıç Kontrol Listesi (13 Madde)
-
CLAUDE.mddosyasına orkestra kuralı yazıldı. - Ajan dosyaları
.claude/agents/klasörüne kondu (ilk olarakdenetci.md). - Denetçinin araçlarında dosya yazma yok (
Read, Grep, Glob, Bash). - Her ajan dosyasında model açıkça yazılı; alt ajan açacak ajanın
toolslistesindeAgentvar, alt ajanlarda yok. - Her brifte altı başlık tam:
GÖREV,SENİN DOSYALARIN,DOKUNMA,ÖNCE OKU,BİTTİ TANIMI,RAPOR. -
BİTTİ TANIMImaddeleri tamamen ölçülebilir. - Altı değişmez kural brife eklendi.
- Genel amaçlı ajan kullanılıyorsa modeli açıkça (
sonnet) verildi. - Dosya değiştiren her ajan kendi çalışma kopyasında (
worktree) ve kendi dalında (branch) çalışıyor. - Sık değişen ("sıcak") dosyalar aynı anda yalnızca tek ajanda.
- Ana dala yalnızca şef, testler geçtikten sonra
merge --no-ffile birleştiriyor. - Denetçi mutasyon kontrolü yapıyor;
ONAYolmadan birleştirme yapılmıyor. - Biten işlerin geçici dosyaları ve worktree'leri siliniyor, disk alanı düzenli kontrol ediliyor.
7.2 Kırmızı-Takım Tatbikatı Ön Uçuş Kontrol Listesi (12 Madde)
- Hedef, sahibi olduğum ya da adını anan yazılı yetkim olan bir sistem.
- Yetki, yapacağım eylemleri ve zaman aralığını kapsıyor.
- Bir istek kapsamdan çıkarsa durmayı biliyorum (yetki geçişsizdir).
- Ortam
yerelya dastaging-tek-kullanımlık-db. - Hedef gerçek/paylaşılan canlı veriye veya fatura/e-posta/SMS kesen servise bağlı değil.
- Üç test hesabı (
redteam-a,redteam-b,redteam-admin) hazır; yalnızca onların arasında hareket edilecek. - Her sır (token, anahtar, PII) yakalandığı an
REDACTEDyapılıyor. - Kanıtla-ve-dur: asgari kanıt alınıyor; DoS yok, sınırlı salvo (
~50 istek). - Durum değişiklikleri geri alınabilir; test işaretçileri (
CANARY-*, yüklenen dosyalar) sonra temizleniyor. - Güvenlik korumaları (WAF, bot filtresi) yalnızca yerelde, geçici kapatılıyor ve o hâl asla commit'lenmiyor.
- Saldıran ajan düzeltmedi; düzeltme ayrı bir turda (
duzeltici.md), rapor oluştuktan sonra yapılıyor. - Gerçek bir açık çıktıysa: düzeltildi, yeniden testle doğrulandı ve başkaları etkileniyorsa sorumlu şekilde açıklandı.
Bölüm 8: Karpathy Kuralları (Sadelik · Cerrahi · Varsayım)
Andrej Karpathy'nin LLM kod hatalarına dair gözlemlerinden damıtılan karpathy-guidelines becerisi, orkestranın iki zayıf yerini kapatmak için sisteme işlendi. Denge notu: bu kurallar hızdan çok dikkatten yanadır; önemsiz işte muhakeme kullan.
Dört ilke:
- Kodlamadan önce düşün: Varsayımlarını açıkça yaz; birden çok yorum varsa sessizce birini seçme, sun; daha basit yol varsa söyle; belirsizse dur ve sor.
- Önce sadelik: Problemi çözen en az kod. İstenmemiş özellik/soyutlama/"esneklik" ve imkânsız senaryo için hata yakalama yok. "Kıdemli biri 'fazla karmaşık' der mi?"
- Cerrahi değişiklik: Yalnızca gerekene dokun; bitişiği "iyileştirme", bozuk olmayanı refactor etme, mevcut stile uy; ilgisiz ölü kodu silme — söyle. Her değişen satır isteğe izlenebilmeli.
- Hedef güdümlü yürütme: Başarı ölçütü tanımla, doğrulanana kadar döngüle (orkestranın BİTTİ TANIMI + mutasyon kontrolüyle birebir örtüşür).
Sisteme nasıl işlendi:
- Brif: altı başlığa ek olarak
VARSAYIMLARveSADELİK SINIRIsatırları yazılır. - gelistirici.md: önce sadelik + cerrahi; belirsizlikte şefe sorar.
- denetci.md: kontrol listesine 9. "fazla karmaşık mı?" ve 10. "cerrahi mi?" maddeleri eklendi.
- Kırmızı-takım: orkestrator saldırganlara kapsam varsayımını yazdırır (belirsizse durdurur); "kanıtla, istismar etme" = cerrahi/asgari kanıt. duzeltici kök nedeni cerrahi kapatır, bitişiği kurcalamaz.
Kaynak: forrestchang/andrej-karpathy-skills (MIT) — Karpathy'nin gözlemlerinden.